%PDF-1.5 %���� ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµùÕ5sLOšuY
Server IP : 49.231.201.246 / Your IP : 216.73.216.149 Web Server : Apache/2.4.18 (Ubuntu) System : Linux 246 4.4.0-210-generic #242-Ubuntu SMP Fri Apr 16 09:57:56 UTC 2021 x86_64 User : root ( 0) PHP Version : 7.0.33-0ubuntu0.16.04.16 Disable Function : exec,passthru,shell_exec,system,proc_open,popen,pcntl_exec MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /proc/11585/cwd/html/ppaobm/backend/web/assets/16c36a2e/ |
Upload File : |
/*!* * * Copyright (c) Highsoft AS. All rights reserved. * *!*/ /* * Copyright (c) Highsoft AS. All rights reserved. */ import * as globals from "./globals.src"; /** * The horizontal alignment of an element. */ export type AlignValue = ("center"|"left"|"right"); /** * (Highstock) Options for crosshairs on axes. */ export type AxisCrosshairOptions = (XAxisCrosshairOptions|YAxisCrosshairOptions); export type AxisEventCallbackFunction = (this: Axis) => void; export type AxisExtremesTriggerValue = ("navigator"|"pan"|"scrollbar"|"zoom"|"rangeSelectorButton"|"rangeSelectorInput"|"traverseUpButton"); /** * Options for axes. */ export type AxisOptions = (XAxisOptions|YAxisOptions|ZAxisOptions); /** * Options for plot band labels on axes. */ export type AxisPlotBandsLabelOptions = (XAxisPlotBandsLabelOptions|YAxisPlotBandsLabelOptions|ZAxisPlotBandsLabelOptions); /** * Options for plot bands on axes. */ export type AxisPlotBandsOptions = (XAxisPlotBandsOptions|YAxisPlotBandsOptions|ZAxisPlotBandsOptions); /** * Options for plot line labels on axes. */ export type AxisPlotLinesLabelOptions = (XAxisPlotLinesLabelOptions|YAxisPlotLinesLabelOptions|ZAxisPlotLinesLabelOptions); /** * Options for plot lines on axes. */ export type AxisPlotLinesOptions = (XAxisPlotLinesOptions|YAxisPlotLinesOptions|ZAxisPlotLinesOptions); export type AxisPointBreakEventCallbackFunction = (this: Axis, event: AxisPointBreakEventObject) => void; export type AxisSetExtremesEventCallbackFunction = (this: Axis, event: AxisSetExtremesEventObject) => void; export type AxisTickPositionerCallbackFunction = (this: Axis) => Array<number>; export type AxisTitleAlignValue = ("high"|"low"|"middle"); export type AxisTypeValue = ("category"|"datetime"|"linear"|"logarithmic"|"treegrid"); export type BubbleSizeByValue = ("area"|"width"); export type ButtonRelativeToValue = ("plotBox"|"spacingBox"); /** * Gets fired when a series is added to the chart after load time, using the * `addSeries` method. Returning `false` prevents the series from being added. * * @param this * The chart on which the event occured. * * @param event * The event that occured. */ export type ChartAddSeriesCallbackFunction = (this: Chart, event: ChartAddSeriesEventObject) => void; /** * Callback for chart constructors. * * @param chart * Created chart. */ export type ChartCallbackFunction = (chart: Chart) => void; /** * Gets fired when clicking on the plot background. * * @param this * The chart on which the event occured. * * @param event * The event that occured. */ export type ChartClickCallbackFunction = (this: Chart, event: PointerEventObject) => void; /** * Gets fired when the chart is finished loading. * * @param this * The chart on which the event occured. * * @param event * The event that occured. */ export type ChartLoadCallbackFunction = (this: Chart, event: Event) => void; /** * Fires when the chart is redrawn, either after a call to `chart.redraw()` or * after an axis, series or point is modified with the `redraw` option set to * `true`. * * @param this * The chart on which the event occured. * * @param event * The event that occured. */ export type ChartRedrawCallbackFunction = (this: Chart, event: Event) => void; /** * Gets fired after initial load of the chart (directly after the `load` event), * and after each redraw (directly after the `redraw` event). * * @param this * The chart on which the event occured. * * @param event * The event that occured. */ export type ChartRenderCallbackFunction = (this: Chart, event: Event) => void; /** * Gets fired when an area of the chart has been selected. The default action * for the selection event is to zoom the chart to the selected area. It can be * prevented by calling `event.preventDefault()` or return false. * * @param this * The chart on which the event occured. * * @param event * Event informations * * @return Return false to prevent the default action, usually zoom. */ export type ChartSelectionCallbackFunction = (this: Chart, event: ChartSelectionContextObject) => (boolean|undefined); /** * A clipping rectangle that can be applied to one or more SVGElement instances. * It is instanciated with the SVGRenderer#clipRect function and applied with * the SVGElement#clip function. */ export type ClipRectElement = SVGElement; /** * Color axis types */ export type ColorAxisTypeValue = ("linear"|"logarithmic"); /** * A valid color to be parsed and handled by Highcharts. Highcharts internally * supports hex colors like `#ffffff`, rgb colors like `rgb(255,255,255)` and * rgba colors like `rgba(255,255,255,1)`. Other colors may be supported by the * browsers and displayed correctly, but Highcharts is not able to process them * and apply concepts like opacity and brightening. */ export type ColorString = string; /** * All possible cursor styles. */ export type CursorValue = ("alias"|"all-scroll"|"auto"|"cell"|"col-resize"|"context-menu"|"copy"|"crosshair"|"default"|"e-resize"|"ew-resize"|"grab"|"grabbing"|"help"|"move"|"n-resize"|"ne-resize"| "nesw-resize"|"no-drop"|"none"|"not-allowed"|"ns-resize"|"nw-resize"|"nwse-resize"|"pointer"|"progress"|"row-resize"|"s-resize"|"se-resize"|"sw-resize"|"text"|"vertical-text"|"w-resize"|"wait"| "zoom-in"|"zoom-out"); /** * All possible dash styles. */ export type DashStyleValue = ("Dash"|"DashDot"|"Dot"|"LongDash"|"LongDashDot"|"LongDashDotDot"|"ShortDash"|"ShortDashDot"|"ShortDashDotDot"|"ShortDot"|"Solid"); /** * Callback function to modify the CSV before parsing it by the data module. * * @param csv * The CSV to modify. * * @return The CSV to parse. */ export type DataBeforeParseCallbackFunction = (csv: string) => string; /** * Callback function that gets called after parsing data. * * @param chartOptions * The chart options that were used. */ export type DataCompleteCallbackFunction = (chartOptions: ChartOptions) => void; export type DataGroupingApproximationValue = ("average"|"averages"|"close"|"high"|"low"|"open"|"sum"); /** * The operator to compare by in the filter. */ export type DataLabelsFilterOperatorValue = ("=="|"==="|">"|">="|"<"|"<="); /** * Callback JavaScript function to format the data label as a string. Note that * if a `format` is defined, the format takes precedence and the formatter is * ignored. * * @param this * Data label context to format * * @return Formatted data label text */ export type DataLabelsFormatterCallbackFunction = (this: DataLabelsFormatterContextObject) => string; /** * Values for handling data labels that flow outside the plot area. */ export type DataLabelsOverflowValue = ("allow"|"justify"); /** * Callback function to parse string representations of dates into JavaScript * timestamps (milliseconds since 1.1.1970). * * @return Timestamp (milliseconds since 1.1.1970) as integer for Date class. */ export type DataParseDateCallbackFunction = (dateValue: string) => number; /** * Callback function to access the parsed columns, the two-dimentional input * data array directly, before they are interpreted into series data and * categories. * * @param columns * The parsed columns by the data module. * * @return Return `false` to stop completion, or call `this.complete()` to * continue async. */ export type DataParsedCallbackFunction = (columns: Array<Array<any>>) => (boolean|undefined); /** * Gets fired when a drilldown point is clicked, before the new series is added. * Note that when clicking a category label to trigger multiple series * drilldown, one `drilldown` event is triggered per point in the category. * * @param this * The chart where the event occurs. * * @param e * The drilldown event. */ export type DrilldownCallbackFunction = (this: Chart, e: DrilldownEventObject) => void; /** * This gets fired after all the series have been drilled up. This is especially * usefull in a chart with multiple drilldown series. * * @param this * The chart where the event occurs. * * @param e * The final drillup event. */ export type DrillupAllCallbackFunction = (this: Chart, e: DrillupAllEventObject) => void; /** * Gets fired when drilling up from a drilldown series. * * @param this * The chart where the event occurs. * * @param e * The drillup event. */ export type DrillupCallbackFunction = (this: Chart, e: DrillupEventObject) => void; /** * The function callback to execute when the event is fired. The `this` context * contains the instance, that fired the event. * * @param eventArguments * Event arguments. */ export type EventCallbackFunction<T> = (this: T, eventArguments?: Dictionary<any>) => void; /** * Gets fired after a chart is printed through the context menu item or the * Chart.print method. * * @param chart * The chart on which the event occured. * * @param event * The event that occured. */ export type ExportingAfterPrintCallbackFunction = (chart: Chart, event: Event) => void; /** * Gets fired before a chart is printed through the context menu item or the * Chart.print method. * * @param chart * The chart on which the event occured. * * @param event * The event that occured. */ export type ExportingBeforePrintCallbackFunction = (chart: Chart, event: Event) => void; /** * Function to call if the offline-exporting module fails to export a chart on * the client side. * * @param options * The exporting options. * * @param err * The error from the module. */ export type ExportingErrorCallbackFunction = (options: ExportingOptions, err: Error) => void; /** * Possible MIME types for exporting. */ export type ExportingMimeTypeValue = ("application/pdf"|"image/jpeg"|"image/png"|"image/svg+xml"); export type FlagShapeValue = ("circlepin"|"flag"|"squarepin"); /** * Formats data as a string. Usually the data is accessible throught the `this` * keyword. * * @param this * Context to format * * @return Formatted text */ export type FormatterCallbackFunction<T> = (this: T) => string; /** * An object of key-value pairs for HTML attributes. */ export type HTMLAttributes = Dictionary<(boolean|number|string)>; /** * An HTML DOM element. The type is a reference to the regular HTMLElement in * the global scope. */ export type HTMLDOMElement = HTMLElement; /** * The iterator callback. * * @param value * The property value. * * @param key * The property key. * * @param obj * The object that objectEach is being applied to. */ export type ObjectEachCallbackFunction = (value: any, key: string, obj: any) => void; export type OptionsApproximationValue = ("barnes-hut"|"none"); export type OptionsBinsNumberValue = ("rice"|"square-root"|"sturges"); export type OptionsBoostBlendingValue = ("add"|"darken"|"multiply"); export type OptionsDataClassColorValue = ("category"|"tween"); export type OptionsDateFormatValue = ("dd/mm/YY"|"dd/mm/YYYY"|"mm/dd/YY"|"mm/dd/YYYY"|"YYYY/mm/dd"); export type OptionsDraggableValue = (""|"x"|"xy"|"y"); export type OptionsFindNearestPointByValue = ("x"|"xy"); export type OptionsGapUnitValue = ("relative"|"value"); export type OptionsGridLineInterpolationValue = ("circle"|"polygon"); export type OptionsHeaderShapeValue = ("callout"|"square"); export type OptionsIntegrationValue = ("euler"|"verlet"); export type OptionsLandmarkVerbosityValue = ("all"|"disabled"|"one"); export type OptionsLayoutAlgorithmValue = ("squarified"|"strip"|"stripes"|"sliceAndDice"); export type OptionsLayoutStartingDirectionValue = ("horizontal"|"vertical"); export type OptionsLayoutValue = ("horizontal"|"proximate"|"vertical"); export type OptionsLinecapValue = ("round"|"square"); export type OptionsMarkerEndValue = ("arrow"|"none"); export type OptionsMinorTickPositionValue = ("inside"|"outside"); export type OptionsModeValue = ("normal"|"serialize"); export type OptionsOnKeyValue = ("close"|"high"|"low"|"open"|"y"); export type OptionsOverflowValue = ("allow"|"justify"); export type OptionsPanKeyValue = ("alt"|"ctrl"|"meta"|"shift"); export type OptionsPinchTypeValue = ("x"|"xy"|"y"); export type OptionsPointIntervalUnitValue = ("day"|"month"|"year"); export type OptionsPointValKeyValue = ("close"|"high"|"low"|"open"); export type OptionsPosition3dValue = ("chart"|"flap"|"offset"|"ortho"); export type OptionsRotationOriginValue = ("center"|"end"|"start"); export type OptionsStackingValue = ("normal"|"percent"); export type OptionsStepValue = ("center"|"left"|"right"); export type OptionsTextAlignValue = ("center"|"left"|"right"); export type OptionsTickmarkPlacementValue = ("between"|"on"); export type OptionsTickPositionValue = ("inside"|"outside"); export type OptionsUnitValue = ("percentage"|"pixels"|"weight"); export type OptionsZoomKeyValue = ("alt"|"ctrl"|"meta"|"shift"); export type OptionsZoomTypeValue = ("x"|"xy"|"y"); export type PaneBackgroundShapeValue = ("arc"|"circle"|"solid"); /** * The default pathfinder algorithm to use for a chart. It is possible to define * your own algorithms by adding them to the * `Highcharts.Pathfinder.prototype.algorithms` object before the chart has been * created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. Will * attempt to avoid other points, but its focus is performance over accuracy. * Works well with less dense datasets. */ export type PathfinderTypeValue = ("straight"|"fastAvoid"|"simpleConnect"|string); /** * Formatter callback function. * * @param this * Data label context to format * * @return Formatted data label text */ export type PlotNetworkDataLabelsFormatterCallbackFunction = (this: (DataLabelsFormatterContextObject|PlotNetworkDataLabelsFormatterContextObject)) => string; /** * Formatter callback function. * * @param this * Data label context to format * * @return Formatted data label text */ export type PlotPackedBubbleDataLabelsFormatterCallbackFunction = (this: (DataLabelsFormatterContextObject|PlotPackedBubbleDataLabelsFormatterContextObject)) => string; /** * Gets fired when the legend item belonging to a point is clicked. The default * action is to toggle the visibility of the point. This can be prevented by * returning `false` or calling `event.preventDefault()`. * * @param this * The point on which the event occured. * * @param event * The event that occured. */ export type PointLegendItemClickCallbackFunction = (this: Point, event: PointLegendItemClickEventObject) => void; /** * Define the time span for the button */ export type RangeSelectorButtonTypeValue = ("all"|"day"|"hour"|"millisecond"|"minute"|"month"|"second"|"week"|"year"|"ytd"); /** * Callback function to react on button clicks. * * @param e * Event arguments. * * @param Return * false to cancel the default button event. */ export type RangeSelectorClickCallbackFunction = (e: Event, Return: (boolean|undefined)) => void; /** * Callback function to parse values entered in the input boxes and return a * valid JavaScript time as milliseconds since 1970. * * @param value * Input value to parse. * * @return Parsed JavaScript time value. */ export type RangeSelectorParseCallbackFunction = (value: string) => number; /** * If a number is given, it defines the pixel length. If a percentage string is * given, like for example `'50%'`, the setting defines a length relative to a * base size, for example the size of a container. */ export type RelativeSize = (number|string); /** * A callback function to gain complete control on when the responsive rule * applies. * * @return Return `true` if it applies. */ export type ResponsiveCallbackFunction = () => boolean; /** * @param evt * Mouse click event */ export type ScreenReaderClickCallbackFunction = (evt: MouseEvent) => void; /** * Creates a formatted string for the screen reader module. * * @param context * Context to format * * @return Formatted string for the screen reader module. */ export type ScreenReaderFormatterCallbackFunction<T> = (context: T) => string; /** * Function callback when a series has been animated. * * @param this * The series where the event occured. * * @param event * Event arguments. */ export type SeriesAfterAnimateCallbackFunction = (this: Series, event: SeriesAfterAnimateEventObject) => void; /** * Function callback when the checkbox next to the series' name in the legend is * clicked. * * @param this * The series where the event occured. * * @param event * Event arguments. */ export type SeriesCheckboxClickCallbackFunction = (this: Series, event: SeriesCheckboxClickEventObject) => void; /** * Function callback when a series is clicked. Return false to cancel toogle * actions. * * @param this * The series where the event occured. * * @param event * Event arguments. */ export type SeriesClickCallbackFunction = (this: Series, event: SeriesClickEventObject) => void; /** * Gets fired when the series is hidden after chart generation time, either by * clicking the legend item or by calling `.hide()`. * * @param this * The series where the event occured. * * @param event * The event that occured. */ export type SeriesHideCallbackFunction = (this: Series, event: Event) => void; /** * Gets fired when the legend item belonging to a series is clicked. The default * action is to toggle the visibility of the series. This can be prevented by * returning `false` or calling `event.preventDefault()`. * * @param this * The series where the event occured. * * @param event * The event that occured. */ export type SeriesLegendItemClickCallbackFunction = (this: Series, event: SeriesLegendItemClickEventObject) => void; /** * The SVG value used for the `stroke-linecap` and `stroke-linejoin` of a line * graph. */ export type SeriesLinecapValue = ("butt"|"round"|"square"|string); /** * Gets fired when the mouse leaves the graph. * * @param this * Series where the event occured. * * @param event * Event that occured. */ export type SeriesMouseOutCallbackFunction = (this: Series, event: Event) => void; /** * Gets fired when the mouse enters the graph. * * @param this * Series where the event occured. * * @param event * Event that occured. */ export type SeriesMouseOverCallbackFunction = (this: Series, event: Event) => void; /** * The possible types of series options. */ export type SeriesOptionsType = (SeriesAbandsOptions|SeriesAdOptions|SeriesAoOptions|SeriesApoOptions|SeriesAreaOptions|SeriesArearangeOptions|SeriesAreasplineOptions|SeriesAreasplinerangeOptions| SeriesAroonOptions|SeriesAroonoscillatorOptions|SeriesAtrOptions|SeriesBarOptions|SeriesBbOptions|SeriesBellcurveOptions|SeriesBoxplotOptions|SeriesBubbleOptions|SeriesBulletOptions| SeriesCandlestickOptions|SeriesCciOptions|SeriesChaikinOptions|SeriesCmfOptions|SeriesColumnOptions|SeriesColumnpyramidOptions|SeriesColumnrangeOptions|SeriesCylinderOptions|SeriesDemaOptions| SeriesDependencywheelOptions|SeriesDpoOptions|SeriesEmaOptions|SeriesErrorbarOptions|SeriesFlagsOptions|SeriesFunnel3dOptions|SeriesFunnelOptions|SeriesGanttOptions|SeriesGaugeOptions| SeriesHeatmapOptions|SeriesHistogramOptions|SeriesIkhOptions|SeriesItemOptions|SeriesKeltnerchannelsOptions|SeriesLinearregressionangleOptions|SeriesLinearregressioninterceptOptions| SeriesLinearregressionOptions|SeriesLinearregressionslopeOptions|SeriesLineOptions|SeriesMacdOptions|SeriesMapbubbleOptions|SeriesMaplineOptions|SeriesMapOptions|SeriesMappointOptions| SeriesMfiOptions|SeriesMomentumOptions|SeriesNatrOptions|SeriesNetworkgraphOptions|SeriesOhlcOptions|SeriesOrganizationOptions|SeriesPackedbubbleOptions|SeriesParetoOptions|SeriesPcOptions| SeriesPieOptions|SeriesPivotpointsOptions|SeriesPolygonOptions|SeriesPpoOptions|SeriesPriceenvelopesOptions|SeriesPsarOptions|SeriesPyramid3dOptions|SeriesPyramidOptions|SeriesRocOptions| SeriesRsiOptions|SeriesSankeyOptions|SeriesScatter3dOptions|SeriesScatterOptions|SeriesSmaOptions|SeriesSolidgaugeOptions|SeriesSplineOptions|SeriesStochasticOptions|SeriesStreamgraphOptions| SeriesSunburstOptions|SeriesSupertrendOptions|SeriesTemaOptions|SeriesTilemapOptions|SeriesTimelineOptions|SeriesTreemapOptions|SeriesTrixOptions|SeriesVariablepieOptions|SeriesVariwideOptions| SeriesVbpOptions|SeriesVectorOptions|SeriesVennOptions|SeriesVwapOptions|SeriesWaterfallOptions|SeriesWilliamsrOptions|SeriesWindbarbOptions|SeriesWmaOptions|SeriesWordcloudOptions| SeriesXrangeOptions|SeriesZigzagOptions); /** * Layout value for the child nodes in an organization chart. If `hanging`, this * node's children will hang below their parent, allowing a tighter packing of * nodes in the diagram. */ export type SeriesOrganizationNodesLayoutValue = ("hanging"|"normal"); /** * Function callback when a series point is clicked. Return false to cancel the * action. * * @param this * The point where the event occured. * * @param event * Event arguments. */ export type SeriesPointClickCallbackFunction = (this: Point, event: SeriesPointClickEventObject) => void; /** * Function callback to execute while series points are dragged. Return false to * stop the default drag action. * * @param this * Point where the event occured. * * @param event * Event arguments. */ export type SeriesPointDragCallbackFunction = (this: Point, event: SeriesPointDragEventObject) => void; /** * Function callback to execute when a series point is dragged. * * @param this * Point where the event occured. * * @param event * Event arguments. */ export type SeriesPointDragStartCallbackFunction = (this: Point, event: SeriesPointDragStartEventObject) => void; /** * Function callback to execute when series points are dropped. * * @param this * Point where the event occured. * * @param event * Event arguments. */ export type SeriesPointDropCallbackFunction = (this: Point, event: SeriesPointDropEventObject) => void; /** * Gets fired when the mouse leaves the area close to the point. * * @param this * Point where the event occured. * * @param event * Event that occured. */ export type SeriesPointMouseOutCallbackFunction = (this: Point, event: Event) => void; /** * Gets fired when the mouse enters the area close to the point. * * @param this * Point where the event occured. * * @param event * Event that occured. */ export type SeriesPointMouseOverCallbackFunction = (this: Point, event: Event) => void; /** * Gets fired when the point is removed using the `.remove()` method. * * @param this * Point where the event occured. * * @param event * Event that occured. */ export type SeriesPointRemoveCallbackFunction = (this: Point, event: Event) => void; /** * Gets fired when the point is selected either programmatically or following a * click on the point. * * @param this * Point where the event occured. * * @param event * Event that occured. */ export type SeriesPointSelectCallbackFunction = (this: Point, event: SeriesPointSelectEventObject) => void; /** * Fires when the point is unselected either programmatically or following a * click on the point. * * @param this * Point where the event occured. * * @param event * Event that occured. */ export type SeriesPointUnselectCallbackFunction = (this: Point, event: SeriesPointUnselectEventObject) => void; /** * Gets fired when the point is updated programmatically through the `.update()` * method. * * @param this * Point where the event occured. * * @param event * Event that occured. */ export type SeriesPointUpdateCallbackFunction = (this: Point, event: SeriesPointUpdateEventObject) => void; /** * Gets fired when the series is shown after chart generation time, either by * clicking the legend item or by calling `.show()`. * * @param this * Series where the event occured. * * @param event * Event that occured. */ export type SeriesShowCallbackFunction = (this: Series, event: Event) => void; /** * Possible rotation options for data labels in the sunburst series. */ export type SeriesSunburstDataLabelsRotationValue = ("auto"|"parallel"|"perpendicular"); /** * An SVG DOM element. The type is a reference to the regular SVGElement in the * global scope. */ export type SVGDOMElement = globals.GlobalSVGElement; /** * Array of path commands, that will go into the `d` attribute of an SVG * element. */ export type SVGPathArray = Array<(number|SVGPathCommand)>; /** * Possible path commands in a SVG path array. */ export type SVGPathCommand = ("a"|"c"|"h"|"l"|"m"|"q"|"s"|"t"|"v"|"z"|"A"|"C"|"H"|"L"|"M"|"Q"|"S"|"T"|"V"|"Z"); /** * Can be one of `arc`, `callout`, `circle`, `diamond`, `square`, `triangle`, * and `triangle-down`. Symbols are used internally for point markers, button * and label borders and backgrounds, or custom shapes. Extendable by adding to * SVGRenderer#symbols. */ export type SymbolKeyValue = ("arc"|"callout"|"circle"|"diamond"|"square"|"triangle"|"triangle-down"); export type TilemapShapeValue = ("circle"|"diamond"|"hexagon"|"square"); /** * Function of an additional date format specifier. * * @param timestamp * The time to format. * * @return The formatted portion of the date. */ export type TimeFormatCallbackFunction = (timestamp: number) => string; /** * Callback function to format the text of the tooltip from scratch. * * In case of single or shared tooltips, a string should be be returned. In case * of splitted tooltips, it should return an array where the first item is the * header, and subsequent items are mapped to the points. Return `false` to * disable tooltip for a specific point on series. * * @param this * Context to format * * @return Formatted text or false */ export type TooltipFormatterCallbackFunction = (this: TooltipFormatterContextObject) => (false|string|Array<string>); /** * A callback function to place the tooltip in a specific position. * * @param labelWidth * Width of the tooltip. * * @param labelHeight * Height of the tooltip. * * @param point * Point information for positioning a tooltip. * * @return New position for the tooltip. */ export type TooltipPositionerCallbackFunction = (labelWidth: number, labelHeight: number, point: TooltipPositionerPointObject) => PositionObject; export type TooltipShapeValue = ("callout"|"circle"|"square"); export type VariablePieSizeByValue = ("area"|"radius"); /** * The vertical alignment of an element. */ export type VerticalAlignValue = ("bottom"|"middle"|"top"); /** * Proceed function to call original (wrapped) function. * * @param arg1 * Optional argument. Without any arguments defaults to first argument of * the wrapping function. * * @param arg2 * Optional argument. Without any arguments defaults to second argument * of the wrapping function. * * @param arg3 * Optional argument. Without any arguments defaults to third argument of * the wrapping function. * * @return Return value of the original function. */ export type WrapProceedFunction = (arg1?: any, arg2?: any, arg3?: any) => any; /** * (Highstock) Formatter function for the text of a crosshair label. * * @param this * Axis context * * @param value * Y value of the data point */ export type XAxisCrosshairLabelFormatterCallbackFunction = (this: Axis, value: number) => void; /** * (Highcharts, Highstock, Highmaps, Gantt) Options for announcing new data to * screen reader users. Useful for dynamic data applications and drilldown. * * Keep in mind that frequent announcements will not be useful to users, as they * won't have time to explore the new data. For these applications, consider * making snapshots of the data accessible, and do the announcements in batches. */ export interface AccessibilityAnnounceNewDataOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Optional formatter callback for * the announcement. Receives up to three arguments. The first argument is * always an array of all series that received updates. If an announcement * is already queued, the series that received updates for that announcement * are also included in this array. The second argument is provided if * `chart.addSeries` was called, and there is a new series. In that case, * this argument is a reference to the new series. The third argument, * similarly, is provided if `series.addPoint` was called, and there is a * new point. In that case, this argument is a reference to the new point. * * The function should return a string with the text to announce to the * user. Return empty string to not announce anything. Return `false` to use * the default announcement format. */ announcementFormatter?: Function; /** * (Highcharts, Highstock, Highmaps, Gantt) Enable announcing new data to * screen reader users */ enabled?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Choose whether or not the * announcements should interrupt the screen reader. If not enabled, the * user will be notified once idle. It is recommended not to enable this * setting unless there is a specific reason to do so. */ interruptUser?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Minimum interval between * announcements in milliseconds. If new data arrives before this amount of * time has passed, it is queued for announcement. If another new data event * happens while an announcement is queued, the queued announcement is * dropped, and the latest announcement is queued instead. Set to 0 to allow * all announcements, but be warned that frequent announcements are * disturbing to users. */ minAnnounceInterval?: number; } /** * (Highcharts, Highstock, Highmaps, Gantt) Options for the focus border drawn * around elements while navigating through them. */ export interface AccessibilityKeyboardNavigationFocusBorderOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Enable/disable focus border for * chart. */ enabled?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Hide the browser's default focus * indicator. */ hideBrowserFocusOutline?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Focus border margin around the * elements. */ margin?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) Style options for the focus * border drawn around elements while navigating through them. Note that * some browsers in addition draw their own borders for focused elements. * These automatic borders can not be styled by Highcharts. * * In styled mode, the border is given the `.highcharts-focus-border` class. */ style?: CSSObject; } /** * (Highcharts, Highstock, Highmaps, Gantt) Options for keyboard navigation. */ export interface AccessibilityKeyboardNavigationOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Enable keyboard navigation for * the chart. */ enabled?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Options for the focus border * drawn around elements while navigating through them. */ focusBorder?: AccessibilityKeyboardNavigationFocusBorderOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) Set the keyboard navigation mode * for the chart. Can be "normal" or "serialize". In normal mode, left/right * arrow keys move between points in a series, while up/down arrow keys move * between series. Up/down navigation acts intelligently to figure out which * series makes sense to move to from any given point. * * In "serialize" mode, points are instead navigated as a single list. * Left/right behaves as in "normal" mode. Up/down arrow keys will behave * like left/right. This can be useful for unifying navigation behavior * with/without screen readers enabled. */ mode?: OptionsModeValue; /** * (Highcharts, Highstock, Highmaps, Gantt) Order of tab navigation in the * chart. Determines which elements are tabbed to first. Available elements * are: `series`, `zoom`, `rangeSelector`, `chartMenu`, `legend`. In * addition, any custom components can be added here. */ order?: any; /** * (Highcharts, Highstock, Highmaps, Gantt) Skip null points when navigating * through points with the keyboard. */ skipNullPoints?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether or not to wrap around * when reaching the end of arrow-key navigation for an element in the * chart. */ wrapAround?: boolean; } /** * (Highcharts, Highstock, Highmaps, Gantt) Options for configuring * accessibility for the chart. Requires the accessibility module to be loaded. * For a description of the module and information on its features, see * Highcharts Accessibility. */ export interface AccessibilityOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Whether or not to add a shortcut * button in the screen reader information region to show the data table. */ addTableShortcut?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Options for announcing new data * to screen reader users. Useful for dynamic data applications and * drilldown. * * Keep in mind that frequent announcements will not be useful to users, as * they won't have time to explore the new data. For these applications, * consider making snapshots of the data accessible, and do the * announcements in batches. */ announceNewData?: AccessibilityAnnounceNewDataOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) Date format to use to describe * range of datetime axes. * * For an overview of the replacement codes, see dateFormat. */ axisRangeDateFormat?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) A hook for adding custom * components to the accessibility module. Should be an object mapping * component names to instances of classes inheriting from the * Highcharts.AccessibilityComponent base class. Remember to add the * component to the keyboardNavigation.order for the keyboard navigation to * be usable. */ customComponents?: object; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether or not to add series * descriptions to charts with a single series. */ describeSingleSeries?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) A text description of the chart. * * If the Accessibility module is loaded, this is included by default as a * long description of the chart in the hidden screen reader information * region. * * Note: It is considered a best practice to make the description of the * chart visible to all users, so consider if this can be placed in text * around the chart instead. */ description?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Enable accessibility * functionality for the chart. */ enabled?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Options for keyboard navigation. */ keyboardNavigation?: AccessibilityKeyboardNavigationOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) Amount of landmarks/regions to * create for screen reader users. More landmarks can make navigation with * screen readers easier, but can be distracting if there are lots of charts * on the page. Three modes are available: * * - `all`: Adds regions for all series, legend, menu, information region. * * - `one`: Adds a single landmark per chart. * * - `disabled`: No landmarks are added. */ landmarkVerbosity?: OptionsLandmarkVerbosityValue; /** * (Highcharts, Highstock, Highmaps, Gantt) Function to run upon clicking * the "View as Data Table" link in the screen reader region. * * By default Highcharts will insert and set focus to a data table * representation of the chart. */ onTableAnchorClick?: ScreenReaderClickCallbackFunction; /** * (Highcharts, Highstock, Highmaps, Gantt) Date format to use for points on * datetime axes when describing them to screen reader users. * * Defaults to the same format as in tooltip. * * For an overview of the replacement codes, see dateFormat. */ pointDateFormat?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Formatter function to determine * the date/time format used with points on datetime axes when describing * them to screen reader users. Receives one argument, `point`, referring to * the point to describe. Should return a date format string compatible with * dateFormat. */ pointDateFormatter?: ScreenReaderFormatterCallbackFunction<Point>; /** * (Highcharts, Highstock, Highmaps, Gantt) Formatter function to use * instead of the default for point descriptions. Receives one argument, * `point`, referring to the point to describe. Should return a string with * the description of the point for a screen reader user. If `false` is * returned, the default formatter will be used for that point. */ pointDescriptionFormatter?: ScreenReaderFormatterCallbackFunction<Point>; /** * (Highcharts, Highstock, Highmaps, Gantt) When a series contains more * points than this, we no longer expose information about individual points * to screen readers. * * Set to `false` to disable. */ pointDescriptionThreshold?: (boolean|number); /** * (Highcharts, Highstock, Highmaps, Gantt) Decimals to use for the values * in the point descriptions. Uses tooltip.valueDecimals if not defined. */ pointValueDecimals?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Prefix to add to the values in * the point descriptions. Uses tooltip.valuePrefix if not defined. */ pointValuePrefix?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Suffix to add to the values in * the point descriptions. Uses tooltip.valueSuffix if not defined. */ pointValueSuffix?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) A formatter function to create * the HTML contents of the hidden screen reader information region. * Receives one argument, `chart`, referring to the chart object. Should * return a string with the HTML content of the region. By default this * returns an automatic description of the chart. * * The button to view the chart as a data table will be added automatically * after the custom HTML content if enabled. */ screenReaderSectionFormatter?: ScreenReaderFormatterCallbackFunction<Chart>; /** * (Highcharts, Highstock, Highmaps, Gantt) Formatter function to use * instead of the default for series descriptions. Receives one argument, * `series`, referring to the series to describe. Should return a string * with the description of the series for a screen reader user. If `false` * is returned, the default formatter will be used for that series. */ seriesDescriptionFormatter?: ScreenReaderFormatterCallbackFunction<Series>; /** * (Highcharts, Highstock, Highmaps, Gantt) A text description of the chart * type. * * If the Accessibility module is loaded, this will be included in the * description of the chart in the screen reader information region. * * Highcharts will by default attempt to guess the chart type, but for more * complex charts it is recommended to specify this property for clarity. */ typeDescription?: string; } /** * Options to align the element relative to the chart or another box. */ export interface AlignObject { /** * Horizontal alignment. Can be one of `left`, `center` and `right`. */ align?: AlignValue; /** * Use the `transform` attribute with translateX and translateY custom * attributes to align this elements rather than `x` and `y` attributes. */ alignByTranslate?: boolean; /** * Vertical alignment. Can be one of `top`, `middle` and `bottom`. */ verticalAlign?: VerticalAlignValue; /** * Horizontal pixel offset from alignment. */ x?: number; /** * Vertical pixel offset from alignment. */ y?: number; } /** * An animation configuration. Animation configurations can also be defined as * booleans, where `false` turns off animation and `true` defaults to a duration * of 500ms. */ export interface AnimationOptionsObject { /** * A callback function to exectute when the animation finishes. */ complete?: Function; /** * The animation duration in milliseconds. */ duration: number; /** * The name of an easing function as defined on the `Math` object. */ easing?: string; /** * A callback function to execute on each step of each attribute or CSS * property that's being animated. The first argument contains information * about the animation and progress. */ step?: Function; } export interface AnnotationsCrookedLineControlPointEventsOptions { drag?: any; } /** * (Highstock) Options for annotation's control points. Each control point * inherits options from controlPointOptions object. Options from the * controlPointOptions can be overwritten by options in a specific control * point. */ export interface AnnotationsCrookedLineControlPointOptions { events?: AnnotationsCrookedLineControlPointEventsOptions; height?: number; positioner?: any; style?: AnnotationsCrookedLineControlPointStyleOptions; symbol?: string; visible?: boolean; width?: number; } export interface AnnotationsCrookedLineControlPointStyleOptions { fill?: string; stroke?: string; "stroke-width"?: number; } export interface AnnotationsCrookedLineEventsOptions { /** * (Highstock) Event callback when annotation is added to the chart. */ add?: any; /** * (Highstock) Event callback when annotation is updated (e.g. drag and * droppped or resized by control points). */ afterUpdate?: any; /** * (Highstock) Event callback when annotation is removed from the chart. */ remove?: any; } /** * (Highstock) Options for annotation's labels. Each label inherits options from * the labelOptions object. An option from the labelOptions can be overwritten * by config for a specific label. */ export interface AnnotationsCrookedLineLabelOptions { /** * (Highstock) The alignment of the annotation's label. If right, the right * side of the label should be touching the point. */ align?: AlignValue; /** * (Highstock) Whether to allow the annotation's labels to overlap. To make * the labels less sensitive for overlapping, the can be set to 0. */ allowOverlap?: boolean; /** * (Highstock) The background color or gradient for the annotation's label. */ backgroundColor?: ColorString; /** * (Highstock) The border color for the annotation's label. */ borderColor?: ColorString; /** * (Highstock) The border radius in pixels for the annotaiton's label. */ borderRadius?: number; /** * (Highstock) The border width in pixels for the annotation's label */ borderWidth?: number; /** * (Highstock) A class name for styling by CSS. */ className?: string; /** * (Highstock) Whether to hide the annotation's label that is outside the * plot area. */ crop?: boolean; /** * (Highstock) The label's pixel distance from the point. */ distance?: number; /** * (Highstock) A format string for the data label. */ format?: string; /** * (Highstock) Callback JavaScript function to format the annotation's * label. Note that if a `format` or `text` are defined, the format or text * take precedence and the formatter is ignored. `This` refers to a * point * object. */ formatter?: Function; /** * (Highstock) How to handle the annotation's label that flow outside the * plot area. The justify option aligns the label inside the plot area. */ overflow?: OptionsOverflowValue; /** * (Highstock) When either the borderWidth or the backgroundColor is set, * this is the padding within the box. */ padding?: number; /** * (Highstock) The shadow of the box. The shadow can be an object * configuration containing `color`, `offsetX`, `offsetY`, `opacity` and * `width`. */ shadow?: (boolean|object); /** * (Highstock) The name of a symbol to use for the border around the label. * Symbols are predefined functions on the Renderer object. */ shape?: string; /** * (Highstock) Styles for the annotation's label. */ style?: (AnnotationsCrookedLineLabelStyleOptions|CSSObject); /** * (Highstock) Alias for the format option. */ text?: string; /** * (Highstock) Whether to use HTML to render the annotation's label. */ useHTML?: boolean; /** * (Highstock) The vertical alignment of the annotation's label. */ verticalAlign?: VerticalAlignValue; /** * (Highstock) The x position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ x?: number; /** * (Highstock) The y position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ y?: number; } /** * (Highstock) An array of labels for the annotation. For options that apply to * multiple labels, they can be added to the labelOptions. */ export interface AnnotationsCrookedLineLabelsOptions { /** * (Highstock) The alignment of the annotation's label. If right, the right * side of the label should be touching the point. */ align?: AlignValue; /** * (Highstock) Whether to allow the annotation's labels to overlap. To make * the labels less sensitive for overlapping, the can be set to 0. */ allowOverlap?: boolean; /** * (Highstock) The background color or gradient for the annotation's label. */ backgroundColor?: ColorString; /** * (Highstock) The border color for the annotation's label. */ borderColor?: ColorString; /** * (Highstock) The border radius in pixels for the annotaiton's label. */ borderRadius?: number; /** * (Highstock) The border width in pixels for the annotation's label */ borderWidth?: number; /** * (Highstock) A class name for styling by CSS. */ className?: string; /** * (Highstock) Whether to hide the annotation's label that is outside the * plot area. */ crop?: boolean; /** * (Highstock) The label's pixel distance from the point. */ distance?: number; /** * (Highstock) A format string for the data label. */ format?: string; /** * (Highstock) Callback JavaScript function to format the annotation's * label. Note that if a `format` or `text` are defined, the format or text * take precedence and the formatter is ignored. `This` refers to a * point * object. */ formatter?: Function; /** * (Highstock) How to handle the annotation's label that flow outside the * plot area. The justify option aligns the label inside the plot area. */ overflow?: OptionsOverflowValue; /** * (Highstock) When either the borderWidth or the backgroundColor is set, * this is the padding within the box. */ padding?: number; /** * (Highstock) This option defines the point to which the label will be * connected. It can be either the point which exists in the series - it is * referenced by the point's id - or a new point with defined x, y properies * and optionally axes. */ point?: (object|string|AnnotationsCrookedLineLabelsPointOptions); /** * (Highstock) The shadow of the box. The shadow can be an object * configuration containing `color`, `offsetX`, `offsetY`, `opacity` and * `width`. */ shadow?: (boolean|object); /** * (Highstock) The name of a symbol to use for the border around the label. * Symbols are predefined functions on the Renderer object. */ shape?: string; /** * (Highstock) Styles for the annotation's label. */ style?: (AnnotationsCrookedLineLabelsStyleOptions|CSSObject); /** * (Highstock) Alias for the format option. */ text?: string; /** * (Highstock) Whether to use HTML to render the annotation's label. */ useHTML?: boolean; /** * (Highstock) The vertical alignment of the annotation's label. */ verticalAlign?: VerticalAlignValue; /** * (Highstock) The x position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ x?: number; /** * (Highstock) The y position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ y?: number; } /** * (Highstock) This option defines the point to which the label will be * connected. It can be either the point which exists in the series - it is * referenced by the point's id - or a new point with defined x, y properies and * optionally axes. */ export interface AnnotationsCrookedLineLabelsPointOptions { /** * (Highstock) The x position of the point. Units can be either in axis or * chart pixel coordinates. */ x?: number; /** * (Highstock) This number defines which xAxis the point is connected to. It * refers to either the axis id or the index of the axis in the xAxis array. * If the option is not configured or the axis is not found the point's x * coordinate refers to the chart pixels. */ xAxis?: (number|string); /** * (Highstock) The y position of the point. Units can be either in axis or * chart pixel coordinates. */ y?: number; /** * (Highstock) This number defines which yAxis the point is connected to. It * refers to either the axis id or the index of the axis in the yAxis array. * If the option is not configured or the axis is not found the point's y * coordinate refers to the chart pixels. */ yAxis?: (number|string); } /** * (Highstock) Styles for the annotation's label. */ export interface AnnotationsCrookedLineLabelsStyleOptions { color?: string; fontSize?: string; fontWeight?: string; } /** * (Highstock) Styles for the annotation's label. */ export interface AnnotationsCrookedLineLabelStyleOptions { color?: string; fontSize?: string; fontWeight?: string; } /** * (Highstock) A crooked line annotation. */ export interface AnnotationsCrookedLineOptions { /** * (Highstock) Options for annotation's control points. Each control point * inherits options from controlPointOptions object. Options from the * controlPointOptions can be overwritten by options in a specific control * point. */ controlPointOptions?: (object|AnnotationsCrookedLineControlPointOptions); /** * (Highstock) Allow an annotation to be draggable by a user. Possible * values are `"x"`, `"xy"`, `"y"` and `""` (disabled). */ draggable?: OptionsDraggableValue; events?: AnnotationsCrookedLineEventsOptions; /** * (Highstock) Options for annotation's labels. Each label inherits options * from the labelOptions object. An option from the labelOptions can be * overwritten by config for a specific label. */ labelOptions?: AnnotationsCrookedLineLabelOptions; /** * (Highstock) An array of labels for the annotation. For options that apply * to multiple labels, they can be added to the labelOptions. */ labels?: (AnnotationsCrookedLineLabelsOptions|Array<object>); /** * (Highstock) Options for annotation's shapes. Each shape inherits options * from the shapeOptions object. An option from the shapeOptions can be * overwritten by config for a specific shape. */ shapeOptions?: (object|AnnotationsCrookedLineShapeOptions); /** * (Highstock) An array of shapes for the annotation. For options that apply * to multiple shapes, then can be added to the shapeOptions. */ shapes?: (AnnotationsCrookedLineShapesOptions|Array<object>); /** * (Highstock) Additional options for an annotation with the type. */ typeOptions?: AnnotationsCrookedLineTypeOptions; /** * (Highstock) Whether the annotation is visible. */ visible?: boolean; /** * (Highstock) The Z index of the annotation. */ zIndex?: number; } /** * (Highstock) Options for annotation's shapes. Each shape inherits options from * the shapeOptions object. An option from the shapeOptions can be overwritten * by config for a specific shape. */ export interface AnnotationsCrookedLineShapeOptions { /** * (Highstock) The color of the shape's fill. */ fill?: ColorString; /** * (Highstock) The height of the shape. */ height?: number; /** * (Highstock) The radius of the shape. */ r?: number; /** * (Highstock) Defines additional snapping area around an annotation making * this annotation to focus. Defined in pixels. */ snap?: number; /** * (Highstock) The color of the shape's stroke. */ stroke?: ColorString; /** * (Highstock) The pixel stroke width of the shape. */ strokeWidth?: number; /** * (Highstock) The type of the shape, e.g. circle or rectangle. */ type?: string; /** * (Highstock) The width of the shape. */ width?: number; } /** * (Highstock) An array of shapes for the annotation. For options that apply to * multiple shapes, then can be added to the shapeOptions. */ export interface AnnotationsCrookedLineShapesOptions { /** * (Highstock) The color of the shape's fill. */ fill?: ColorString; /** * (Highstock) The height of the shape. */ height?: number; /** * (Highstock) Id of the marker which will be drawn at the final vertex of * the path. Custom markers can be defined in defs property. */ markerEnd?: string; /** * (Highstock) Id of the marker which will be drawn at the first vertex of * the path. Custom markers can be defined in defs property. */ markerStart?: string; /** * (Highstock) This option defines the point to which the shape will be * connected. It can be either the point which exists in the series - it is * referenced by the point's id - or a new point with defined x, y * properties and optionally axes. */ point?: (object|string|AnnotationsCrookedLineShapesPointOptions); /** * (Highstock) An array of points for the shape. This option is available * for shapes which can use multiple points such as path. A point can be * either a point object or a point's id. */ points?: Array<(string|object)>; /** * (Highstock) The radius of the shape. */ r?: number; /** * (Highstock) Defines additional snapping area around an annotation making * this annotation to focus. Defined in pixels. */ snap?: number; /** * (Highstock) The color of the shape's stroke. */ stroke?: ColorString; /** * (Highstock) The pixel stroke width of the shape. */ strokeWidth?: number; /** * (Highstock) The type of the shape, e.g. circle or rectangle. */ type?: string; /** * (Highstock) The width of the shape. */ width?: number; } /** * (Highstock) This option defines the point to which the shape will be * connected. It can be either the point which exists in the series - it is * referenced by the point's id - or a new point with defined x, y properties * and optionally axes. */ export interface AnnotationsCrookedLineShapesPointOptions { /** * (Highstock) The x position of the point. Units can be either in axis or * chart pixel coordinates. */ x?: number; /** * (Highstock) This number defines which xAxis the point is connected to. It * refers to either the axis id or the index of the axis in the xAxis array. * If the option is not configured or the axis is not found the point's x * coordinate refers to the chart pixels. */ xAxis?: (number|string); /** * (Highstock) The y position of the point. Units can be either in axis or * chart pixel coordinates. */ y?: number; /** * (Highstock) This number defines which yAxis the point is connected to. It * refers to either the axis id or the index of the axis in the yAxis array. * If the option is not configured or the axis is not found the point's y * coordinate refers to the chart pixels. */ yAxis?: (number|string); } /** * (Highstock) Line options. */ export interface AnnotationsCrookedLineTypeLineOptions { fill?: string; } /** * (Highstock) Additional options for an annotation with the type. */ export interface AnnotationsCrookedLineTypeOptions { /** * (Highstock) Line options. */ line?: (object|AnnotationsCrookedLineTypeLineOptions); points?: (AnnotationsCrookedLineTypePointsOptions|Array<object>); /** * (Highstock) This number defines which xAxis the point is connected to. It * refers to either the axis id or the index of the axis in the xAxis array. */ xAxis?: number; /** * (Highstock) This number defines which yAxis the point is connected to. It * refers to either the axis id or the index of the axis in the xAxis array. */ yAxis?: number; } /** * (Highstock) Options for annotation's labels. Each label inherits options from * the labelOptions object. An option from the labelOptions can be overwritten * by config for a specific label. */ export interface AnnotationsCrookedLineTypePointsLabelOptions { /** * (Highstock) The alignment of the annotation's label. If right, the right * side of the label should be touching the point. */ align?: AlignValue; /** * (Highstock) Whether to allow the annotation's labels to overlap. To make * the labels less sensitive for overlapping, the can be set to 0. */ allowOverlap?: boolean; /** * (Highstock) The background color or gradient for the annotation's label. */ backgroundColor?: ColorString; /** * (Highstock) The border color for the annotation's label. */ borderColor?: ColorString; /** * (Highstock) The border radius in pixels for the annotaiton's label. */ borderRadius?: number; /** * (Highstock) The border width in pixels for the annotation's label */ borderWidth?: number; /** * (Highstock) A class name for styling by CSS. */ className?: string; /** * (Highstock) Whether to hide the annotation's label that is outside the * plot area. */ crop?: boolean; /** * (Highstock) The label's pixel distance from the point. */ distance?: number; /** * (Highstock) A format string for the data label. */ format?: string; /** * (Highstock) Callback JavaScript function to format the annotation's * label. Note that if a `format` or `text` are defined, the format or text * take precedence and the formatter is ignored. `This` refers to a * point * object. */ formatter?: Function; /** * (Highstock) How to handle the annotation's label that flow outside the * plot area. The justify option aligns the label inside the plot area. */ overflow?: OptionsOverflowValue; /** * (Highstock) When either the borderWidth or the backgroundColor is set, * this is the padding within the box. */ padding?: number; /** * (Highstock) The shadow of the box. The shadow can be an object * configuration containing `color`, `offsetX`, `offsetY`, `opacity` and * `width`. */ shadow?: (boolean|object); /** * (Highstock) The name of a symbol to use for the border around the label. * Symbols are predefined functions on the Renderer object. */ shape?: string; /** * (Highstock) Styles for the annotation's label. */ style?: (AnnotationsCrookedLineTypePointsLabelStyleOptions|CSSObject); /** * (Highstock) Alias for the format option. */ text?: string; /** * (Highstock) Whether to use HTML to render the annotation's label. */ useHTML?: boolean; /** * (Highstock) The vertical alignment of the annotation's label. */ verticalAlign?: VerticalAlignValue; /** * (Highstock) The x position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ x?: number; /** * (Highstock) The y position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ y?: number; } /** * (Highstock) Styles for the annotation's label. */ export interface AnnotationsCrookedLineTypePointsLabelStyleOptions { color?: string; fontSize?: string; fontWeight?: string; } export interface AnnotationsCrookedLineTypePointsOptions { controlPoint?: number; /** * (Highstock) Options for annotation's labels. Each label inherits options * from the labelOptions object. An option from the labelOptions can be * overwritten by config for a specific label. */ label?: (object|AnnotationsCrookedLineTypePointsLabelOptions); /** * (Highstock) The x position of the point. */ x?: number; /** * (Highstock) The y position of the point. */ y?: number; } export interface AnnotationsElliottWaveControlPointEventsOptions { drag?: any; } /** * (Highstock) Options for annotation's control points. Each control point * inherits options from controlPointOptions object. Options from the * controlPointOptions can be overwritten by options in a specific control * point. */ export interface AnnotationsElliottWaveControlPointOptions { events?: AnnotationsElliottWaveControlPointEventsOptions; height?: number; positioner?: any; style?: AnnotationsElliottWaveControlPointStyleOptions; symbol?: string; visible?: boolean; width?: number; } export interface AnnotationsElliottWaveControlPointStyleOptions { fill?: string; stroke?: string; "stroke-width"?: number; } export interface AnnotationsElliottWaveEventsOptions { /** * (Highstock) Event callback when annotation is added to the chart. */ add?: any; /** * (Highstock) Event callback when annotation is updated (e.g. drag and * droppped or resized by control points). */ afterUpdate?: any; /** * (Highstock) Event callback when annotation is removed from the chart. */ remove?: any; } /** * (Highstock) Options for annotation's labels. Each label inherits options from * the labelOptions object. An option from the labelOptions can be overwritten * by config for a specific label. */ export interface AnnotationsElliottWaveLabelOptions { /** * (Highstock) The alignment of the annotation's label. If right, the right * side of the label should be touching the point. */ align?: string; /** * (Highstock) Whether to allow the annotation's labels to overlap. To make * the labels less sensitive for overlapping, the can be set to 0. */ allowOverlap?: boolean; /** * (Highstock) The background color or gradient for the annotation's label. */ backgroundColor?: string; /** * (Highstock) The border color for the annotation's label. */ borderColor?: ColorString; /** * (Highstock) The border radius in pixels for the annotaiton's label. */ borderRadius?: number; /** * (Highstock) The border width in pixels for the annotation's label */ borderWidth?: number; /** * (Highstock) A class name for styling by CSS. */ className?: string; /** * (Highstock) Whether to hide the annotation's label that is outside the * plot area. */ crop?: boolean; /** * (Highstock) The label's pixel distance from the point. */ distance?: number; /** * (Highstock) A format string for the data label. */ format?: string; /** * (Highstock) Callback JavaScript function to format the annotation's * label. Note that if a `format` or `text` are defined, the format or text * take precedence and the formatter is ignored. `This` refers to a * point * object. */ formatter?: Function; /** * (Highstock) How to handle the annotation's label that flow outside the * plot area. The justify option aligns the label inside the plot area. */ overflow?: OptionsOverflowValue; /** * (Highstock) When either the borderWidth or the backgroundColor is set, * this is the padding within the box. */ padding?: number; /** * (Highstock) The shadow of the box. The shadow can be an object * configuration containing `color`, `offsetX`, `offsetY`, `opacity` and * `width`. */ shadow?: (boolean|object); /** * (Highstock) The name of a symbol to use for the border around the label. * Symbols are predefined functions on the Renderer object. */ shape?: string; /** * (Highstock) Styles for the annotation's label. */ style?: (AnnotationsElliottWaveLabelStyleOptions|CSSObject); /** * (Highstock) Alias for the format option. */ text?: string; type?: string; /** * (Highstock) Whether to use HTML to render the annotation's label. */ useHTML?: boolean; /** * (Highstock) The vertical alignment of the annotation's label. */ verticalAlign?: VerticalAlignValue; /** * (Highstock) The x position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ x?: number; /** * (Highstock) The y position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ y?: number; } /** * (Highstock) An array of labels for the annotation. For options that apply to * multiple labels, they can be added to the labelOptions. */ export interface AnnotationsElliottWaveLabelsOptions { /** * (Highstock) The alignment of the annotation's label. If right, the right * side of the label should be touching the point. */ align?: AlignValue; /** * (Highstock) Whether to allow the annotation's labels to overlap. To make * the labels less sensitive for overlapping, the can be set to 0. */ allowOverlap?: boolean; /** * (Highstock) The background color or gradient for the annotation's label. */ backgroundColor?: ColorString; /** * (Highstock) The border color for the annotation's label. */ borderColor?: ColorString; /** * (Highstock) The border radius in pixels for the annotaiton's label. */ borderRadius?: number; /** * (Highstock) The border width in pixels for the annotation's label */ borderWidth?: number; /** * (Highstock) A class name for styling by CSS. */ className?: string; /** * (Highstock) Whether to hide the annotation's label that is outside the * plot area. */ crop?: boolean; /** * (Highstock) The label's pixel distance from the point. */ distance?: number; /** * (Highstock) A format string for the data label. */ format?: string; /** * (Highstock) Callback JavaScript function to format the annotation's * label. Note that if a `format` or `text` are defined, the format or text * take precedence and the formatter is ignored. `This` refers to a * point * object. */ formatter?: Function; /** * (Highstock) How to handle the annotation's label that flow outside the * plot area. The justify option aligns the label inside the plot area. */ overflow?: OptionsOverflowValue; /** * (Highstock) When either the borderWidth or the backgroundColor is set, * this is the padding within the box. */ padding?: number; /** * (Highstock) This option defines the point to which the label will be * connected. It can be either the point which exists in the series - it is * referenced by the point's id - or a new point with defined x, y properies * and optionally axes. */ point?: (object|string|AnnotationsElliottWaveLabelsPointOptions); /** * (Highstock) The shadow of the box. The shadow can be an object * configuration containing `color`, `offsetX`, `offsetY`, `opacity` and * `width`. */ shadow?: (boolean|object); /** * (Highstock) The name of a symbol to use for the border around the label. * Symbols are predefined functions on the Renderer object. */ shape?: string; /** * (Highstock) Styles for the annotation's label. */ style?: (AnnotationsElliottWaveLabelsStyleOptions|CSSObject); /** * (Highstock) Alias for the format option. */ text?: string; /** * (Highstock) Whether to use HTML to render the annotation's label. */ useHTML?: boolean; /** * (Highstock) The vertical alignment of the annotation's label. */ verticalAlign?: VerticalAlignValue; /** * (Highstock) The x position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ x?: number; /** * (Highstock) The y position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ y?: number; } /** * (Highstock) This option defines the point to which the label will be * connected. It can be either the point which exists in the series - it is * referenced by the point's id - or a new point with defined x, y properies and * optionally axes. */ export interface AnnotationsElliottWaveLabelsPointOptions { /** * (Highstock) The x position of the point. Units can be either in axis or * chart pixel coordinates. */ x?: number; /** * (Highstock) This number defines which xAxis the point is connected to. It * refers to either the axis id or the index of the axis in the xAxis array. * If the option is not configured or the axis is not found the point's x * coordinate refers to the chart pixels. */ xAxis?: (number|string); /** * (Highstock) The y position of the point. Units can be either in axis or * chart pixel coordinates. */ y?: number; /** * (Highstock) This number defines which yAxis the point is connected to. It * refers to either the axis id or the index of the axis in the yAxis array. * If the option is not configured or the axis is not found the point's y * coordinate refers to the chart pixels. */ yAxis?: (number|string); } /** * (Highstock) Styles for the annotation's label. */ export interface AnnotationsElliottWaveLabelsStyleOptions { color?: string; fontSize?: string; fontWeight?: string; } /** * (Highstock) Styles for the annotation's label. */ export interface AnnotationsElliottWaveLabelStyleOptions { color?: string; fontSize?: string; fontWeight?: string; } /** * (Highstock) An elliott wave annotation. */ export interface AnnotationsElliottWaveOptions { /** * (Highstock) Options for annotation's control points. Each control point * inherits options from controlPointOptions object. Options from the * controlPointOptions can be overwritten by options in a specific control * point. */ controlPointOptions?: (object|AnnotationsElliottWaveControlPointOptions); /** * (Highstock) Allow an annotation to be draggable by a user. Possible * values are `"x"`, `"xy"`, `"y"` and `""` (disabled). */ draggable?: OptionsDraggableValue; events?: AnnotationsElliottWaveEventsOptions; /** * (Highstock) Options for annotation's labels. Each label inherits options * from the labelOptions object. An option from the labelOptions can be * overwritten by config for a specific label. */ labelOptions?: AnnotationsElliottWaveLabelOptions; /** * (Highstock) An array of labels for the annotation. For options that apply * to multiple labels, they can be added to the labelOptions. */ labels?: (AnnotationsElliottWaveLabelsOptions|Array<object>); /** * (Highstock) Options for annotation's shapes. Each shape inherits options * from the shapeOptions object. An option from the shapeOptions can be * overwritten by config for a specific shape. */ shapeOptions?: (object|AnnotationsElliottWaveShapeOptions); /** * (Highstock) An array of shapes for the annotation. For options that apply * to multiple shapes, then can be added to the shapeOptions. */ shapes?: (AnnotationsElliottWaveShapesOptions|Array<object>); /** * (Highstock) Additional options for an annotation with the type. */ typeOptions?: AnnotationsElliottWaveTypeOptions; /** * (Highstock) Whether the annotation is visible. */ visible?: boolean; /** * (Highstock) The Z index of the annotation. */ zIndex?: number; } /** * (Highstock) Options for annotation's shapes. Each shape inherits options from * the shapeOptions object. An option from the shapeOptions can be overwritten * by config for a specific shape. */ export interface AnnotationsElliottWaveShapeOptions { /** * (Highstock) The color of the shape's fill. */ fill?: ColorString; /** * (Highstock) The height of the shape. */ height?: number; /** * (Highstock) The radius of the shape. */ r?: number; /** * (Highstock) Defines additional snapping area around an annotation making * this annotation to focus. Defined in pixels. */ snap?: number; /** * (Highstock) The color of the shape's stroke. */ stroke?: ColorString; /** * (Highstock) The pixel stroke width of the shape. */ strokeWidth?: number; /** * (Highstock) The type of the shape, e.g. circle or rectangle. */ type?: string; /** * (Highstock) The width of the shape. */ width?: number; } /** * (Highstock) An array of shapes for the annotation. For options that apply to * multiple shapes, then can be added to the shapeOptions. */ export interface AnnotationsElliottWaveShapesOptions { /** * (Highstock) The color of the shape's fill. */ fill?: ColorString; /** * (Highstock) The height of the shape. */ height?: number; /** * (Highstock) Id of the marker which will be drawn at the final vertex of * the path. Custom markers can be defined in defs property. */ markerEnd?: string; /** * (Highstock) Id of the marker which will be drawn at the first vertex of * the path. Custom markers can be defined in defs property. */ markerStart?: string; /** * (Highstock) This option defines the point to which the shape will be * connected. It can be either the point which exists in the series - it is * referenced by the point's id - or a new point with defined x, y * properties and optionally axes. */ point?: (object|string|AnnotationsElliottWaveShapesPointOptions); /** * (Highstock) An array of points for the shape. This option is available * for shapes which can use multiple points such as path. A point can be * either a point object or a point's id. */ points?: Array<(string|object)>; /** * (Highstock) The radius of the shape. */ r?: number; /** * (Highstock) Defines additional snapping area around an annotation making * this annotation to focus. Defined in pixels. */ snap?: number; /** * (Highstock) The color of the shape's stroke. */ stroke?: ColorString; /** * (Highstock) The pixel stroke width of the shape. */ strokeWidth?: number; /** * (Highstock) The type of the shape, e.g. circle or rectangle. */ type?: string; /** * (Highstock) The width of the shape. */ width?: number; } /** * (Highstock) This option defines the point to which the shape will be * connected. It can be either the point which exists in the series - it is * referenced by the point's id - or a new point with defined x, y properties * and optionally axes. */ export interface AnnotationsElliottWaveShapesPointOptions { /** * (Highstock) The x position of the point. Units can be either in axis or * chart pixel coordinates. */ x?: number; /** * (Highstock) This number defines which xAxis the point is connected to. It * refers to either the axis id or the index of the axis in the xAxis array. * If the option is not configured or the axis is not found the point's x * coordinate refers to the chart pixels. */ xAxis?: (number|string); /** * (Highstock) The y position of the point. Units can be either in axis or * chart pixel coordinates. */ y?: number; /** * (Highstock) This number defines which yAxis the point is connected to. It * refers to either the axis id or the index of the axis in the yAxis array. * If the option is not configured or the axis is not found the point's y * coordinate refers to the chart pixels. */ yAxis?: (number|string); } /** * (Highstock) Line options. */ export interface AnnotationsElliottWaveTypeLineOptions { fill?: string; strokeWidth?: number; } /** * (Highstock) Additional options for an annotation with the type. */ export interface AnnotationsElliottWaveTypeOptions { labels?: any; /** * (Highstock) Line options. */ line?: AnnotationsElliottWaveTypeLineOptions; points?: (AnnotationsElliottWaveTypePointsOptions|Array<object>); /** * (Highstock) This number defines which xAxis the point is connected to. It * refers to either the axis id or the index of the axis in the xAxis array. */ xAxis?: number; /** * (Highstock) This number defines which yAxis the point is connected to. It * refers to either the axis id or the index of the axis in the xAxis array. */ yAxis?: number; } /** * (Highstock) Options for annotation's labels. Each label inherits options from * the labelOptions object. An option from the labelOptions can be overwritten * by config for a specific label. */ export interface AnnotationsElliottWaveTypePointsLabelOptions { /** * (Highstock) The alignment of the annotation's label. If right, the right * side of the label should be touching the point. */ align?: AlignValue; /** * (Highstock) Whether to allow the annotation's labels to overlap. To make * the labels less sensitive for overlapping, the can be set to 0. */ allowOverlap?: boolean; /** * (Highstock) The background color or gradient for the annotation's label. */ backgroundColor?: ColorString; /** * (Highstock) The border color for the annotation's label. */ borderColor?: ColorString; /** * (Highstock) The border radius in pixels for the annotaiton's label. */ borderRadius?: number; /** * (Highstock) The border width in pixels for the annotation's label */ borderWidth?: number; /** * (Highstock) A class name for styling by CSS. */ className?: string; /** * (Highstock) Whether to hide the annotation's label that is outside the * plot area. */ crop?: boolean; /** * (Highstock) The label's pixel distance from the point. */ distance?: number; /** * (Highstock) A format string for the data label. */ format?: string; /** * (Highstock) Callback JavaScript function to format the annotation's * label. Note that if a `format` or `text` are defined, the format or text * take precedence and the formatter is ignored. `This` refers to a * point * object. */ formatter?: Function; /** * (Highstock) How to handle the annotation's label that flow outside the * plot area. The justify option aligns the label inside the plot area. */ overflow?: OptionsOverflowValue; /** * (Highstock) When either the borderWidth or the backgroundColor is set, * this is the padding within the box. */ padding?: number; /** * (Highstock) The shadow of the box. The shadow can be an object * configuration containing `color`, `offsetX`, `offsetY`, `opacity` and * `width`. */ shadow?: (boolean|object); /** * (Highstock) The name of a symbol to use for the border around the label. * Symbols are predefined functions on the Renderer object. */ shape?: string; /** * (Highstock) Styles for the annotation's label. */ style?: (AnnotationsElliottWaveTypePointsLabelStyleOptions|CSSObject); /** * (Highstock) Alias for the format option. */ text?: string; /** * (Highstock) Whether to use HTML to render the annotation's label. */ useHTML?: boolean; /** * (Highstock) The vertical alignment of the annotation's label. */ verticalAlign?: VerticalAlignValue; /** * (Highstock) The x position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ x?: number; /** * (Highstock) The y position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ y?: number; } /** * (Highstock) Styles for the annotation's label. */ export interface AnnotationsElliottWaveTypePointsLabelStyleOptions { color?: string; fontSize?: string; fontWeight?: string; } export interface AnnotationsElliottWaveTypePointsOptions { controlPoint?: number; /** * (Highstock) Options for annotation's labels. Each label inherits options * from the labelOptions object. An option from the labelOptions can be * overwritten by config for a specific label. */ label?: (object|AnnotationsElliottWaveTypePointsLabelOptions); /** * (Highstock) The x position of the point. */ x?: number; /** * (Highstock) The y position of the point. */ y?: number; } export interface AnnotationsEventsOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Event callback when annotation * is added to the chart. */ add?: any; /** * (Highcharts, Highstock, Highmaps, Gantt) Event callback when annotation * is updated (e.g. drag and droppped or resized by control points). */ afterUpdate?: any; /** * (Highcharts, Highstock, Highmaps, Gantt) Event callback when annotation * is removed from the chart. */ remove?: any; } export interface AnnotationsFibonacciControlPointEventsOptions { drag?: any; } /** * (Highstock) Options for annotation's control points. Each control point * inherits options from controlPointOptions object. Options from the * controlPointOptions can be overwritten by options in a specific control * point. */ export interface AnnotationsFibonacciControlPointOptions { events?: AnnotationsFibonacciControlPointEventsOptions; height?: number; positioner?: any; style?: AnnotationsFibonacciControlPointStyleOptions; symbol?: string; visible?: boolean; width?: number; } export interface AnnotationsFibonacciControlPointStyleOptions { fill?: string; stroke?: string; "stroke-width"?: number; } export interface AnnotationsFibonacciEventsOptions { /** * (Highstock) Event callback when annotation is added to the chart. */ add?: any; /** * (Highstock) Event callback when annotation is updated (e.g. drag and * droppped or resized by control points). */ afterUpdate?: any; /** * (Highstock) Event callback when annotation is removed from the chart. */ remove?: any; } /** * (Highstock) Options for annotation's labels. Each label inherits options from * the labelOptions object. An option from the labelOptions can be overwritten * by config for a specific label. */ export interface AnnotationsFibonacciLabelOptions { /** * (Highstock) The alignment of the annotation's label. If right, the right * side of the label should be touching the point. */ align?: string; /** * (Highstock) Whether to allow the annotation's labels to overlap. To make * the labels less sensitive for overlapping, the can be set to 0. */ allowOverlap?: boolean; /** * (Highstock) The background color or gradient for the annotation's label. */ backgroundColor?: string; /** * (Highstock) The border color for the annotation's label. */ borderColor?: ColorString; /** * (Highstock) The border radius in pixels for the annotaiton's label. */ borderRadius?: number; /** * (Highstock) The border width in pixels for the annotation's label */ borderWidth?: number; /** * (Highstock) A class name for styling by CSS. */ className?: string; /** * (Highstock) Whether to hide the annotation's label that is outside the * plot area. */ crop?: boolean; /** * (Highstock) The label's pixel distance from the point. */ distance?: number; /** * (Highstock) A format string for the data label. */ format?: string; /** * (Highstock) Callback JavaScript function to format the annotation's * label. Note that if a `format` or `text` are defined, the format or text * take precedence and the formatter is ignored. `This` refers to a * point * object. */ formatter?: Function; /** * (Highstock) How to handle the annotation's label that flow outside the * plot area. The justify option aligns the label inside the plot area. */ overflow?: OptionsOverflowValue; /** * (Highstock) When either the borderWidth or the backgroundColor is set, * this is the padding within the box. */ padding?: number; /** * (Highstock) The shadow of the box. The shadow can be an object * configuration containing `color`, `offsetX`, `offsetY`, `opacity` and * `width`. */ shadow?: (boolean|object); /** * (Highstock) The name of a symbol to use for the border around the label. * Symbols are predefined functions on the Renderer object. */ shape?: string; /** * (Highstock) Styles for the annotation's label. */ style?: AnnotationsFibonacciLabelStyleOptions; /** * (Highstock) Alias for the format option. */ text?: string; /** * (Highstock) Whether to use HTML to render the annotation's label. */ useHTML?: boolean; /** * (Highstock) The vertical alignment of the annotation's label. */ verticalAlign?: string; /** * (Highstock) The x position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ x?: number; /** * (Highstock) The y position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ y?: number; } /** * (Highstock) An array of labels for the annotation. For options that apply to * multiple labels, they can be added to the labelOptions. */ export interface AnnotationsFibonacciLabelsOptions { /** * (Highstock) The alignment of the annotation's label. If right, the right * side of the label should be touching the point. */ align?: AlignValue; /** * (Highstock) Whether to allow the annotation's labels to overlap. To make * the labels less sensitive for overlapping, the can be set to 0. */ allowOverlap?: boolean; /** * (Highstock) The background color or gradient for the annotation's label. */ backgroundColor?: ColorString; /** * (Highstock) The border color for the annotation's label. */ borderColor?: ColorString; /** * (Highstock) The border radius in pixels for the annotaiton's label. */ borderRadius?: number; /** * (Highstock) The border width in pixels for the annotation's label */ borderWidth?: number; /** * (Highstock) A class name for styling by CSS. */ className?: string; /** * (Highstock) Whether to hide the annotation's label that is outside the * plot area. */ crop?: boolean; /** * (Highstock) The label's pixel distance from the point. */ distance?: number; /** * (Highstock) A format string for the data label. */ format?: string; /** * (Highstock) Callback JavaScript function to format the annotation's * label. Note that if a `format` or `text` are defined, the format or text * take precedence and the formatter is ignored. `This` refers to a * point * object. */ formatter?: Function; /** * (Highstock) How to handle the annotation's label that flow outside the * plot area. The justify option aligns the label inside the plot area. */ overflow?: OptionsOverflowValue; /** * (Highstock) When either the borderWidth or the backgroundColor is set, * this is the padding within the box. */ padding?: number; /** * (Highstock) This option defines the point to which the label will be * connected. It can be either the point which exists in the series - it is * referenced by the point's id - or a new point with defined x, y properies * and optionally axes. */ point?: (object|string|AnnotationsFibonacciLabelsPointOptions); /** * (Highstock) The shadow of the box. The shadow can be an object * configuration containing `color`, `offsetX`, `offsetY`, `opacity` and * `width`. */ shadow?: (boolean|object); /** * (Highstock) The name of a symbol to use for the border around the label. * Symbols are predefined functions on the Renderer object. */ shape?: string; /** * (Highstock) Styles for the annotation's label. */ style?: (AnnotationsFibonacciLabelsStyleOptions|CSSObject); /** * (Highstock) Alias for the format option. */ text?: string; /** * (Highstock) Whether to use HTML to render the annotation's label. */ useHTML?: boolean; /** * (Highstock) The vertical alignment of the annotation's label. */ verticalAlign?: VerticalAlignValue; /** * (Highstock) The x position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ x?: number; /** * (Highstock) The y position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ y?: number; } /** * (Highstock) This option defines the point to which the label will be * connected. It can be either the point which exists in the series - it is * referenced by the point's id - or a new point with defined x, y properies and * optionally axes. */ export interface AnnotationsFibonacciLabelsPointOptions { /** * (Highstock) The x position of the point. Units can be either in axis or * chart pixel coordinates. */ x?: number; /** * (Highstock) This number defines which xAxis the point is connected to. It * refers to either the axis id or the index of the axis in the xAxis array. * If the option is not configured or the axis is not found the point's x * coordinate refers to the chart pixels. */ xAxis?: (number|string); /** * (Highstock) The y position of the point. Units can be either in axis or * chart pixel coordinates. */ y?: number; /** * (Highstock) This number defines which yAxis the point is connected to. It * refers to either the axis id or the index of the axis in the yAxis array. * If the option is not configured or the axis is not found the point's y * coordinate refers to the chart pixels. */ yAxis?: (number|string); } /** * (Highstock) Styles for the annotation's label. */ export interface AnnotationsFibonacciLabelsStyleOptions { color?: string; fontSize?: string; fontWeight?: string; } /** * (Highstock) Styles for the annotation's label. */ export interface AnnotationsFibonacciLabelStyleOptions { color?: string; fontSize?: string; fontWeight?: string; } /** * (Highstock) A fibonacci annotation. */ export interface AnnotationsFibonacciOptions { /** * (Highstock) Options for annotation's control points. Each control point * inherits options from controlPointOptions object. Options from the * controlPointOptions can be overwritten by options in a specific control * point. */ controlPointOptions?: (object|AnnotationsFibonacciControlPointOptions); /** * (Highstock) Allow an annotation to be draggable by a user. Possible * values are `"x"`, `"xy"`, `"y"` and `""` (disabled). */ draggable?: OptionsDraggableValue; events?: AnnotationsFibonacciEventsOptions; /** * (Highstock) Options for annotation's labels. Each label inherits options * from the labelOptions object. An option from the labelOptions can be * overwritten by config for a specific label. */ labelOptions?: AnnotationsFibonacciLabelOptions; /** * (Highstock) An array of labels for the annotation. For options that apply * to multiple labels, they can be added to the labelOptions. */ labels?: (AnnotationsFibonacciLabelsOptions|Array<object>); /** * (Highstock) Options for annotation's shapes. Each shape inherits options * from the shapeOptions object. An option from the shapeOptions can be * overwritten by config for a specific shape. */ shapeOptions?: (object|AnnotationsFibonacciShapeOptions); /** * (Highstock) An array of shapes for the annotation. For options that apply * to multiple shapes, then can be added to the shapeOptions. */ shapes?: (AnnotationsFibonacciShapesOptions|Array<object>); /** * (Highstock) Additional options for an annotation with the type. */ typeOptions?: AnnotationsFibonacciTypeOptions; /** * (Highstock) Whether the annotation is visible. */ visible?: boolean; /** * (Highstock) The Z index of the annotation. */ zIndex?: number; } /** * (Highstock) Options for annotation's shapes. Each shape inherits options from * the shapeOptions object. An option from the shapeOptions can be overwritten * by config for a specific shape. */ export interface AnnotationsFibonacciShapeOptions { /** * (Highstock) The color of the shape's fill. */ fill?: ColorString; /** * (Highstock) The height of the shape. */ height?: number; /** * (Highstock) The radius of the shape. */ r?: number; /** * (Highstock) Defines additional snapping area around an annotation making * this annotation to focus. Defined in pixels. */ snap?: number; /** * (Highstock) The color of the shape's stroke. */ stroke?: ColorString; /** * (Highstock) The pixel stroke width of the shape. */ strokeWidth?: number; /** * (Highstock) The type of the shape, e.g. circle or rectangle. */ type?: string; /** * (Highstock) The width of the shape. */ width?: number; } /** * (Highstock) An array of shapes for the annotation. For options that apply to * multiple shapes, then can be added to the shapeOptions. */ export interface AnnotationsFibonacciShapesOptions { /** * (Highstock) The color of the shape's fill. */ fill?: ColorString; /** * (Highstock) The height of the shape. */ height?: number; /** * (Highstock) Id of the marker which will be drawn at the final vertex of * the path. Custom markers can be defined in defs property. */ markerEnd?: string; /** * (Highstock) Id of the marker which will be drawn at the first vertex of * the path. Custom markers can be defined in defs property. */ markerStart?: string; /** * (Highstock) This option defines the point to which the shape will be * connected. It can be either the point which exists in the series - it is * referenced by the point's id - or a new point with defined x, y * properties and optionally axes. */ point?: (object|string|AnnotationsFibonacciShapesPointOptions); /** * (Highstock) An array of points for the shape. This option is available * for shapes which can use multiple points such as path. A point can be * either a point object or a point's id. */ points?: Array<(string|object)>; /** * (Highstock) The radius of the shape. */ r?: number; /** * (Highstock) Defines additional snapping area around an annotation making * this annotation to focus. Defined in pixels. */ snap?: number; /** * (Highstock) The color of the shape's stroke. */ stroke?: ColorString; /** * (Highstock) The pixel stroke width of the shape. */ strokeWidth?: number; /** * (Highstock) The type of the shape, e.g. circle or rectangle. */ type?: string; /** * (Highstock) The width of the shape. */ width?: number; } /** * (Highstock) This option defines the point to which the shape will be * connected. It can be either the point which exists in the series - it is * referenced by the point's id - or a new point with defined x, y properties * and optionally axes. */ export interface AnnotationsFibonacciShapesPointOptions { /** * (Highstock) The x position of the point. Units can be either in axis or * chart pixel coordinates. */ x?: number; /** * (Highstock) This number defines which xAxis the point is connected to. It * refers to either the axis id or the index of the axis in the xAxis array. * If the option is not configured or the axis is not found the point's x * coordinate refers to the chart pixels. */ xAxis?: (number|string); /** * (Highstock) The y position of the point. Units can be either in axis or * chart pixel coordinates. */ y?: number; /** * (Highstock) This number defines which yAxis the point is connected to. It * refers to either the axis id or the index of the axis in the yAxis array. * If the option is not configured or the axis is not found the point's y * coordinate refers to the chart pixels. */ yAxis?: (number|string); } /** * (Highstock) An array with options for the labels. */ export interface AnnotationsFibonacciTypeLabelsOptions { /** * (Highstock) The alignment of the annotation's label. If right, the right * side of the label should be touching the point. */ align?: AlignValue; /** * (Highstock) Whether to allow the annotation's labels to overlap. To make * the labels less sensitive for overlapping, the can be set to 0. */ allowOverlap?: boolean; /** * (Highstock) The background color or gradient for the annotation's label. */ backgroundColor?: ColorString; /** * (Highstock) The border color for the annotation's label. */ borderColor?: ColorString; /** * (Highstock) The border radius in pixels for the annotaiton's label. */ borderRadius?: number; /** * (Highstock) The border width in pixels for the annotation's label */ borderWidth?: number; /** * (Highstock) A class name for styling by CSS. */ className?: string; /** * (Highstock) Whether to hide the annotation's label that is outside the * plot area. */ crop?: boolean; /** * (Highstock) The label's pixel distance from the point. */ distance?: number; /** * (Highstock) A format string for the data label. */ format?: string; /** * (Highstock) Callback JavaScript function to format the annotation's * label. Note that if a `format` or `text` are defined, the format or text * take precedence and the formatter is ignored. `This` refers to a * point * object. */ formatter?: Function; /** * (Highstock) How to handle the annotation's label that flow outside the * plot area. The justify option aligns the label inside the plot area. */ overflow?: OptionsOverflowValue; /** * (Highstock) When either the borderWidth or the backgroundColor is set, * this is the padding within the box. */ padding?: number; /** * (Highstock) The shadow of the box. The shadow can be an object * configuration containing `color`, `offsetX`, `offsetY`, `opacity` and * `width`. */ shadow?: (boolean|object); /** * (Highstock) The name of a symbol to use for the border around the label. * Symbols are predefined functions on the Renderer object. */ shape?: string; /** * (Highstock) Styles for the annotation's label. */ style?: (AnnotationsFibonacciTypeLabelsStyleOptions|CSSObject); /** * (Highstock) Alias for the format option. */ text?: string; /** * (Highstock) Whether to use HTML to render the annotation's label. */ useHTML?: boolean; /** * (Highstock) The vertical alignment of the annotation's label. */ verticalAlign?: VerticalAlignValue; /** * (Highstock) The x position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ x?: number; /** * (Highstock) The y position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ y?: number; } /** * (Highstock) Styles for the annotation's label. */ export interface AnnotationsFibonacciTypeLabelsStyleOptions { color?: string; fontSize?: string; fontWeight?: string; } /** * (Highstock) Line options. */ export interface AnnotationsFibonacciTypeLineOptions { fill?: string; } /** * (Highstock) Additional options for an annotation with the type. */ export interface AnnotationsFibonacciTypeOptions { /** * (Highstock) An array of background colors: Default to: (see online * documentation for example) */ backgroundColors?: any; /** * (Highstock) The height of the fibonacci in terms of yAxis. */ height?: number; /** * (Highstock) An array with options for the labels. */ labels?: (AnnotationsFibonacciTypeLabelsOptions|Array<object>); /** * (Highstock) Line options. */ line?: (object|AnnotationsFibonacciTypeLineOptions); /** * (Highstock) The color of line. */ lineColor?: string; /** * (Highstock) An array of colors for the lines. */ lineColors?: any; points?: (AnnotationsFibonacciTypePointsOptions|Array<object>); /** * (Highstock) This number defines which xAxis the point is connected to. It * refers to either the axis id or the index of the axis in the xAxis array. */ xAxis?: number; /** * (Highstock) This number defines which yAxis the point is connected to. It * refers to either the axis id or the index of the axis in the xAxis array. */ yAxis?: number; } /** * (Highstock) Options for annotation's labels. Each label inherits options from * the labelOptions object. An option from the labelOptions can be overwritten * by config for a specific label. */ export interface AnnotationsFibonacciTypePointsLabelOptions { /** * (Highstock) The alignment of the annotation's label. If right, the right * side of the label should be touching the point. */ align?: AlignValue; /** * (Highstock) Whether to allow the annotation's labels to overlap. To make * the labels less sensitive for overlapping, the can be set to 0. */ allowOverlap?: boolean; /** * (Highstock) The background color or gradient for the annotation's label. */ backgroundColor?: ColorString; /** * (Highstock) The border color for the annotation's label. */ borderColor?: ColorString; /** * (Highstock) The border radius in pixels for the annotaiton's label. */ borderRadius?: number; /** * (Highstock) The border width in pixels for the annotation's label */ borderWidth?: number; /** * (Highstock) A class name for styling by CSS. */ className?: string; /** * (Highstock) Whether to hide the annotation's label that is outside the * plot area. */ crop?: boolean; /** * (Highstock) The label's pixel distance from the point. */ distance?: number; /** * (Highstock) A format string for the data label. */ format?: string; /** * (Highstock) Callback JavaScript function to format the annotation's * label. Note that if a `format` or `text` are defined, the format or text * take precedence and the formatter is ignored. `This` refers to a * point * object. */ formatter?: Function; /** * (Highstock) How to handle the annotation's label that flow outside the * plot area. The justify option aligns the label inside the plot area. */ overflow?: OptionsOverflowValue; /** * (Highstock) When either the borderWidth or the backgroundColor is set, * this is the padding within the box. */ padding?: number; /** * (Highstock) The shadow of the box. The shadow can be an object * configuration containing `color`, `offsetX`, `offsetY`, `opacity` and * `width`. */ shadow?: (boolean|object); /** * (Highstock) The name of a symbol to use for the border around the label. * Symbols are predefined functions on the Renderer object. */ shape?: string; /** * (Highstock) Styles for the annotation's label. */ style?: (AnnotationsFibonacciTypePointsLabelStyleOptions|CSSObject); /** * (Highstock) Alias for the format option. */ text?: string; /** * (Highstock) Whether to use HTML to render the annotation's label. */ useHTML?: boolean; /** * (Highstock) The vertical alignment of the annotation's label. */ verticalAlign?: VerticalAlignValue; /** * (Highstock) The x position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ x?: number; /** * (Highstock) The y position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ y?: number; } /** * (Highstock) Styles for the annotation's label. */ export interface AnnotationsFibonacciTypePointsLabelStyleOptions { color?: string; fontSize?: string; fontWeight?: string; } export interface AnnotationsFibonacciTypePointsOptions { controlPoint?: number; /** * (Highstock) Options for annotation's labels. Each label inherits options * from the labelOptions object. An option from the labelOptions can be * overwritten by config for a specific label. */ label?: (object|AnnotationsFibonacciTypePointsLabelOptions); /** * (Highstock) The x position of the point. */ x?: number; /** * (Highstock) The y position of the point. */ y?: number; } export interface AnnotationsInfinityLineControlPointEventsOptions { drag?: any; } /** * (Highstock) Options for annotation's control points. Each control point * inherits options from controlPointOptions object. Options from the * controlPointOptions can be overwritten by options in a specific control * point. */ export interface AnnotationsInfinityLineControlPointOptions { events?: AnnotationsInfinityLineControlPointEventsOptions; height?: number; positioner?: any; style?: AnnotationsInfinityLineControlPointStyleOptions; symbol?: string; visible?: boolean; width?: number; } export interface AnnotationsInfinityLineControlPointStyleOptions { fill?: string; stroke?: string; "stroke-width"?: number; } export interface AnnotationsInfinityLineEventsOptions { /** * (Highstock) Event callback when annotation is added to the chart. */ add?: any; /** * (Highstock) Event callback when annotation is updated (e.g. drag and * droppped or resized by control points). */ afterUpdate?: any; /** * (Highstock) Event callback when annotation is removed from the chart. */ remove?: any; } /** * (Highstock) Options for annotation's labels. Each label inherits options from * the labelOptions object. An option from the labelOptions can be overwritten * by config for a specific label. */ export interface AnnotationsInfinityLineLabelOptions { /** * (Highstock) The alignment of the annotation's label. If right, the right * side of the label should be touching the point. */ align?: AlignValue; /** * (Highstock) Whether to allow the annotation's labels to overlap. To make * the labels less sensitive for overlapping, the can be set to 0. */ allowOverlap?: boolean; /** * (Highstock) The background color or gradient for the annotation's label. */ backgroundColor?: ColorString; /** * (Highstock) The border color for the annotation's label. */ borderColor?: ColorString; /** * (Highstock) The border radius in pixels for the annotaiton's label. */ borderRadius?: number; /** * (Highstock) The border width in pixels for the annotation's label */ borderWidth?: number; /** * (Highstock) A class name for styling by CSS. */ className?: string; /** * (Highstock) Whether to hide the annotation's label that is outside the * plot area. */ crop?: boolean; /** * (Highstock) The label's pixel distance from the point. */ distance?: number; /** * (Highstock) A format string for the data label. */ format?: string; /** * (Highstock) Callback JavaScript function to format the annotation's * label. Note that if a `format` or `text` are defined, the format or text * take precedence and the formatter is ignored. `This` refers to a * point * object. */ formatter?: Function; /** * (Highstock) How to handle the annotation's label that flow outside the * plot area. The justify option aligns the label inside the plot area. */ overflow?: OptionsOverflowValue; /** * (Highstock) When either the borderWidth or the backgroundColor is set, * this is the padding within the box. */ padding?: number; /** * (Highstock) The shadow of the box. The shadow can be an object * configuration containing `color`, `offsetX`, `offsetY`, `opacity` and * `width`. */ shadow?: (boolean|object); /** * (Highstock) The name of a symbol to use for the border around the label. * Symbols are predefined functions on the Renderer object. */ shape?: string; /** * (Highstock) Styles for the annotation's label. */ style?: (AnnotationsInfinityLineLabelStyleOptions|CSSObject); /** * (Highstock) Alias for the format option. */ text?: string; /** * (Highstock) Whether to use HTML to render the annotation's label. */ useHTML?: boolean; /** * (Highstock) The vertical alignment of the annotation's label. */ verticalAlign?: VerticalAlignValue; /** * (Highstock) The x position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ x?: number; /** * (Highstock) The y position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ y?: number; } /** * (Highstock) An array of labels for the annotation. For options that apply to * multiple labels, they can be added to the labelOptions. */ export interface AnnotationsInfinityLineLabelsOptions { /** * (Highstock) The alignment of the annotation's label. If right, the right * side of the label should be touching the point. */ align?: AlignValue; /** * (Highstock) Whether to allow the annotation's labels to overlap. To make * the labels less sensitive for overlapping, the can be set to 0. */ allowOverlap?: boolean; /** * (Highstock) The background color or gradient for the annotation's label. */ backgroundColor?: ColorString; /** * (Highstock) The border color for the annotation's label. */ borderColor?: ColorString; /** * (Highstock) The border radius in pixels for the annotaiton's label. */ borderRadius?: number; /** * (Highstock) The border width in pixels for the annotation's label */ borderWidth?: number; /** * (Highstock) A class name for styling by CSS. */ className?: string; /** * (Highstock) Whether to hide the annotation's label that is outside the * plot area. */ crop?: boolean; /** * (Highstock) The label's pixel distance from the point. */ distance?: number; /** * (Highstock) A format string for the data label. */ format?: string; /** * (Highstock) Callback JavaScript function to format the annotation's * label. Note that if a `format` or `text` are defined, the format or text * take precedence and the formatter is ignored. `This` refers to a * point * object. */ formatter?: Function; /** * (Highstock) How to handle the annotation's label that flow outside the * plot area. The justify option aligns the label inside the plot area. */ overflow?: OptionsOverflowValue; /** * (Highstock) When either the borderWidth or the backgroundColor is set, * this is the padding within the box. */ padding?: number; /** * (Highstock) This option defines the point to which the label will be * connected. It can be either the point which exists in the series - it is * referenced by the point's id - or a new point with defined x, y properies * and optionally axes. */ point?: (object|string|AnnotationsInfinityLineLabelsPointOptions); /** * (Highstock) The shadow of the box. The shadow can be an object * configuration containing `color`, `offsetX`, `offsetY`, `opacity` and * `width`. */ shadow?: (boolean|object); /** * (Highstock) The name of a symbol to use for the border around the label. * Symbols are predefined functions on the Renderer object. */ shape?: string; /** * (Highstock) Styles for the annotation's label. */ style?: (AnnotationsInfinityLineLabelsStyleOptions|CSSObject); /** * (Highstock) Alias for the format option. */ text?: string; /** * (Highstock) Whether to use HTML to render the annotation's label. */ useHTML?: boolean; /** * (Highstock) The vertical alignment of the annotation's label. */ verticalAlign?: VerticalAlignValue; /** * (Highstock) The x position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ x?: number; /** * (Highstock) The y position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ y?: number; } /** * (Highstock) This option defines the point to which the label will be * connected. It can be either the point which exists in the series - it is * referenced by the point's id - or a new point with defined x, y properies and * optionally axes. */ export interface AnnotationsInfinityLineLabelsPointOptions { /** * (Highstock) The x position of the point. Units can be either in axis or * chart pixel coordinates. */ x?: number; /** * (Highstock) This number defines which xAxis the point is connected to. It * refers to either the axis id or the index of the axis in the xAxis array. * If the option is not configured or the axis is not found the point's x * coordinate refers to the chart pixels. */ xAxis?: (number|string); /** * (Highstock) The y position of the point. Units can be either in axis or * chart pixel coordinates. */ y?: number; /** * (Highstock) This number defines which yAxis the point is connected to. It * refers to either the axis id or the index of the axis in the yAxis array. * If the option is not configured or the axis is not found the point's y * coordinate refers to the chart pixels. */ yAxis?: (number|string); } /** * (Highstock) Styles for the annotation's label. */ export interface AnnotationsInfinityLineLabelsStyleOptions { color?: string; fontSize?: string; fontWeight?: string; } /** * (Highstock) Styles for the annotation's label. */ export interface AnnotationsInfinityLineLabelStyleOptions { color?: string; fontSize?: string; fontWeight?: string; } /** * (Highstock) An infinity line annotation. */ export interface AnnotationsInfinityLineOptions { /** * (Highstock) Options for annotation's control points. Each control point * inherits options from controlPointOptions object. Options from the * controlPointOptions can be overwritten by options in a specific control * point. */ controlPointOptions?: (object|AnnotationsInfinityLineControlPointOptions); /** * (Highstock) Allow an annotation to be draggable by a user. Possible * values are `"x"`, `"xy"`, `"y"` and `""` (disabled). */ draggable?: OptionsDraggableValue; events?: AnnotationsInfinityLineEventsOptions; /** * (Highstock) Options for annotation's labels. Each label inherits options * from the labelOptions object. An option from the labelOptions can be * overwritten by config for a specific label. */ labelOptions?: AnnotationsInfinityLineLabelOptions; /** * (Highstock) An array of labels for the annotation. For options that apply * to multiple labels, they can be added to the labelOptions. */ labels?: (AnnotationsInfinityLineLabelsOptions|Array<object>); /** * (Highstock) Options for annotation's shapes. Each shape inherits options * from the shapeOptions object. An option from the shapeOptions can be * overwritten by config for a specific shape. */ shapeOptions?: (object|AnnotationsInfinityLineShapeOptions); /** * (Highstock) An array of shapes for the annotation. For options that apply * to multiple shapes, then can be added to the shapeOptions. */ shapes?: (AnnotationsInfinityLineShapesOptions|Array<object>); /** * (Highstock) Additional options for an annotation with the type. */ typeOptions?: AnnotationsInfinityLineTypeOptions; /** * (Highstock) Whether the annotation is visible. */ visible?: boolean; /** * (Highstock) The Z index of the annotation. */ zIndex?: number; } /** * (Highstock) Options for annotation's shapes. Each shape inherits options from * the shapeOptions object. An option from the shapeOptions can be overwritten * by config for a specific shape. */ export interface AnnotationsInfinityLineShapeOptions { /** * (Highstock) The color of the shape's fill. */ fill?: ColorString; /** * (Highstock) The height of the shape. */ height?: number; /** * (Highstock) The radius of the shape. */ r?: number; /** * (Highstock) Defines additional snapping area around an annotation making * this annotation to focus. Defined in pixels. */ snap?: number; /** * (Highstock) The color of the shape's stroke. */ stroke?: ColorString; /** * (Highstock) The pixel stroke width of the shape. */ strokeWidth?: number; /** * (Highstock) The type of the shape, e.g. circle or rectangle. */ type?: string; /** * (Highstock) The width of the shape. */ width?: number; } /** * (Highstock) An array of shapes for the annotation. For options that apply to * multiple shapes, then can be added to the shapeOptions. */ export interface AnnotationsInfinityLineShapesOptions { /** * (Highstock) The color of the shape's fill. */ fill?: ColorString; /** * (Highstock) The height of the shape. */ height?: number; /** * (Highstock) Id of the marker which will be drawn at the final vertex of * the path. Custom markers can be defined in defs property. */ markerEnd?: string; /** * (Highstock) Id of the marker which will be drawn at the first vertex of * the path. Custom markers can be defined in defs property. */ markerStart?: string; /** * (Highstock) This option defines the point to which the shape will be * connected. It can be either the point which exists in the series - it is * referenced by the point's id - or a new point with defined x, y * properties and optionally axes. */ point?: (object|string|AnnotationsInfinityLineShapesPointOptions); /** * (Highstock) An array of points for the shape. This option is available * for shapes which can use multiple points such as path. A point can be * either a point object or a point's id. */ points?: Array<(string|object)>; /** * (Highstock) The radius of the shape. */ r?: number; /** * (Highstock) Defines additional snapping area around an annotation making * this annotation to focus. Defined in pixels. */ snap?: number; /** * (Highstock) The color of the shape's stroke. */ stroke?: ColorString; /** * (Highstock) The pixel stroke width of the shape. */ strokeWidth?: number; /** * (Highstock) The type of the shape, e.g. circle or rectangle. */ type?: string; /** * (Highstock) The width of the shape. */ width?: number; } /** * (Highstock) This option defines the point to which the shape will be * connected. It can be either the point which exists in the series - it is * referenced by the point's id - or a new point with defined x, y properties * and optionally axes. */ export interface AnnotationsInfinityLineShapesPointOptions { /** * (Highstock) The x position of the point. Units can be either in axis or * chart pixel coordinates. */ x?: number; /** * (Highstock) This number defines which xAxis the point is connected to. It * refers to either the axis id or the index of the axis in the xAxis array. * If the option is not configured or the axis is not found the point's x * coordinate refers to the chart pixels. */ xAxis?: (number|string); /** * (Highstock) The y position of the point. Units can be either in axis or * chart pixel coordinates. */ y?: number; /** * (Highstock) This number defines which yAxis the point is connected to. It * refers to either the axis id or the index of the axis in the yAxis array. * If the option is not configured or the axis is not found the point's y * coordinate refers to the chart pixels. */ yAxis?: (number|string); } /** * (Highstock) Line options. */ export interface AnnotationsInfinityLineTypeLineOptions { fill?: string; } /** * (Highstock) Additional options for an annotation with the type. */ export interface AnnotationsInfinityLineTypeOptions { /** * (Highstock) Line options. */ line?: (object|AnnotationsInfinityLineTypeLineOptions); points?: (AnnotationsInfinityLineTypePointsOptions|Array<object>); /** * (Highstock) This number defines which xAxis the point is connected to. It * refers to either the axis id or the index of the axis in the xAxis array. */ xAxis?: number; /** * (Highstock) This number defines which yAxis the point is connected to. It * refers to either the axis id or the index of the axis in the xAxis array. */ yAxis?: number; } /** * (Highstock) Options for annotation's labels. Each label inherits options from * the labelOptions object. An option from the labelOptions can be overwritten * by config for a specific label. */ export interface AnnotationsInfinityLineTypePointsLabelOptions { /** * (Highstock) The alignment of the annotation's label. If right, the right * side of the label should be touching the point. */ align?: AlignValue; /** * (Highstock) Whether to allow the annotation's labels to overlap. To make * the labels less sensitive for overlapping, the can be set to 0. */ allowOverlap?: boolean; /** * (Highstock) The background color or gradient for the annotation's label. */ backgroundColor?: ColorString; /** * (Highstock) The border color for the annotation's label. */ borderColor?: ColorString; /** * (Highstock) The border radius in pixels for the annotaiton's label. */ borderRadius?: number; /** * (Highstock) The border width in pixels for the annotation's label */ borderWidth?: number; /** * (Highstock) A class name for styling by CSS. */ className?: string; /** * (Highstock) Whether to hide the annotation's label that is outside the * plot area. */ crop?: boolean; /** * (Highstock) The label's pixel distance from the point. */ distance?: number; /** * (Highstock) A format string for the data label. */ format?: string; /** * (Highstock) Callback JavaScript function to format the annotation's * label. Note that if a `format` or `text` are defined, the format or text * take precedence and the formatter is ignored. `This` refers to a * point * object. */ formatter?: Function; /** * (Highstock) How to handle the annotation's label that flow outside the * plot area. The justify option aligns the label inside the plot area. */ overflow?: OptionsOverflowValue; /** * (Highstock) When either the borderWidth or the backgroundColor is set, * this is the padding within the box. */ padding?: number; /** * (Highstock) The shadow of the box. The shadow can be an object * configuration containing `color`, `offsetX`, `offsetY`, `opacity` and * `width`. */ shadow?: (boolean|object); /** * (Highstock) The name of a symbol to use for the border around the label. * Symbols are predefined functions on the Renderer object. */ shape?: string; /** * (Highstock) Styles for the annotation's label. */ style?: (AnnotationsInfinityLineTypePointsLabelStyleOptions|CSSObject); /** * (Highstock) Alias for the format option. */ text?: string; /** * (Highstock) Whether to use HTML to render the annotation's label. */ useHTML?: boolean; /** * (Highstock) The vertical alignment of the annotation's label. */ verticalAlign?: VerticalAlignValue; /** * (Highstock) The x position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ x?: number; /** * (Highstock) The y position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ y?: number; } /** * (Highstock) Styles for the annotation's label. */ export interface AnnotationsInfinityLineTypePointsLabelStyleOptions { color?: string; fontSize?: string; fontWeight?: string; } export interface AnnotationsInfinityLineTypePointsOptions { controlPoint?: number; /** * (Highstock) Options for annotation's labels. Each label inherits options * from the labelOptions object. An option from the labelOptions can be * overwritten by config for a specific label. */ label?: (object|AnnotationsInfinityLineTypePointsLabelOptions); /** * (Highstock) The x position of the point. */ x?: number; /** * (Highstock) The y position of the point. */ y?: number; } /** * (Highcharts, Highstock, Highmaps, Gantt) Options for annotation's labels. * Each label inherits options from the labelOptions object. An option from the * labelOptions can be overwritten by config for a specific label. */ export interface AnnotationsLabelOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) The alignment of the * annotation's label. If right, the right side of the label should be * touching the point. */ align?: AlignValue; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to allow the * annotation's labels to overlap. To make the labels less sensitive for * overlapping, the can be set to 0. */ allowOverlap?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) The background color or gradient * for the annotation's label. */ backgroundColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Highmaps, Gantt) The border color for the * annotation's label. */ borderColor?: ColorString; /** * (Highcharts, Highstock, Highmaps, Gantt) The border radius in pixels for * the annotaiton's label. */ borderRadius?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The border width in pixels for * the annotation's label */ borderWidth?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) A class name for styling by CSS. */ className?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to hide the annotation's * label that is outside the plot area. */ crop?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) The label's pixel distance from * the point. */ distance?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) A format string for the data * label. */ format?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Callback JavaScript function to * format the annotation's label. Note that if a `format` or `text` are * defined, the format or text take precedence and the formatter is ignored. * `This` refers to a point object. */ formatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock, Highmaps, Gantt) How to handle the annotation's * label that flow outside the plot area. The justify option aligns the * label inside the plot area. */ overflow?: OptionsOverflowValue; /** * (Highcharts, Highstock, Highmaps, Gantt) When either the borderWidth or * the backgroundColor is set, this is the padding within the box. */ padding?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The shadow of the box. The * shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highcharts, Highstock, Highmaps, Gantt) The name of a symbol to use for * the border around the label. Symbols are predefined functions on the * Renderer object. */ shape?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Styles for the annotation's * label. */ style?: CSSObject; /** * (Highcharts, Highstock, Highmaps, Gantt) Alias for the format option. */ text?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to use HTML to render * the annotation's label. */ useHTML?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) The vertical alignment of the * annotation's label. */ verticalAlign?: VerticalAlignValue; /** * (Highcharts, Highstock, Highmaps, Gantt) The x position offset of the * label relative to the point. Note that if a `distance` is defined, the * distance takes precedence over `x` and `y` options. */ x?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The y position offset of the * label relative to the point. Note that if a `distance` is defined, the * distance takes precedence over `x` and `y` options. */ y?: number; } /** * (Highcharts, Highstock, Highmaps, Gantt) An array of labels for the * annotation. For options that apply to multiple labels, they can be added to * the labelOptions. */ export interface AnnotationsLabelsOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) The alignment of the * annotation's label. If right, the right side of the label should be * touching the point. */ align?: AlignValue; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to allow the * annotation's labels to overlap. To make the labels less sensitive for * overlapping, the can be set to 0. */ allowOverlap?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) The background color or gradient * for the annotation's label. */ backgroundColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Highmaps, Gantt) The border color for the * annotation's label. */ borderColor?: ColorString; /** * (Highcharts, Highstock, Highmaps, Gantt) The border radius in pixels for * the annotaiton's label. */ borderRadius?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The border width in pixels for * the annotation's label */ borderWidth?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) A class name for styling by CSS. */ className?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to hide the annotation's * label that is outside the plot area. */ crop?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) The label's pixel distance from * the point. */ distance?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) A format string for the data * label. */ format?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Callback JavaScript function to * format the annotation's label. Note that if a `format` or `text` are * defined, the format or text take precedence and the formatter is ignored. * `This` refers to a point object. */ formatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock, Highmaps, Gantt) How to handle the annotation's * label that flow outside the plot area. The justify option aligns the * label inside the plot area. */ overflow?: OptionsOverflowValue; /** * (Highcharts, Highstock, Highmaps, Gantt) When either the borderWidth or * the backgroundColor is set, this is the padding within the box. */ padding?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) This option defines the point to * which the label will be connected. It can be either the point which * exists in the series - it is referenced by the point's id - or a new * point with defined x, y properies and optionally axes. */ point?: (string|AnnotationsLabelsPointOptions); /** * (Highcharts, Highstock, Highmaps, Gantt) The shadow of the box. The * shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highcharts, Highstock, Highmaps, Gantt) The name of a symbol to use for * the border around the label. Symbols are predefined functions on the * Renderer object. */ shape?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Styles for the annotation's * label. */ style?: CSSObject; /** * (Highcharts, Highstock, Highmaps, Gantt) Alias for the format option. */ text?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to use HTML to render * the annotation's label. */ useHTML?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) The vertical alignment of the * annotation's label. */ verticalAlign?: VerticalAlignValue; /** * (Highcharts, Highstock, Highmaps, Gantt) The x position offset of the * label relative to the point. Note that if a `distance` is defined, the * distance takes precedence over `x` and `y` options. */ x?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The y position offset of the * label relative to the point. Note that if a `distance` is defined, the * distance takes precedence over `x` and `y` options. */ y?: number; } /** * (Highcharts, Highstock, Highmaps, Gantt) This option defines the point to * which the label will be connected. It can be either the point which exists in * the series - it is referenced by the point's id - or a new point with defined * x, y properies and optionally axes. */ export interface AnnotationsLabelsPointOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) The x position of the point. * Units can be either in axis or chart pixel coordinates. */ x?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) This number defines which xAxis * the point is connected to. It refers to either the axis id or the index * of the axis in the xAxis array. If the option is not configured or the * axis is not found the point's x coordinate refers to the chart pixels. */ xAxis?: (number|string); /** * (Highcharts, Highstock, Highmaps, Gantt) The y position of the point. * Units can be either in axis or chart pixel coordinates. */ y?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) This number defines which yAxis * the point is connected to. It refers to either the axis id or the index * of the axis in the yAxis array. If the option is not configured or the * axis is not found the point's y coordinate refers to the chart pixels. */ yAxis?: (number|string); } export interface AnnotationsMeasureControlPointEventsOptions { drag?: any; } /** * (Highstock) Options for annotation's control points. Each control point * inherits options from controlPointOptions object. Options from the * controlPointOptions can be overwritten by options in a specific control * point. */ export interface AnnotationsMeasureControlPointOptions { events?: AnnotationsMeasureControlPointEventsOptions; height?: number; positioner?: any; style?: AnnotationsMeasureControlPointStyleOptions; symbol?: string; visible?: boolean; width?: number; } export interface AnnotationsMeasureControlPointStyleOptions { fill?: string; stroke?: string; "stroke-width"?: number; } export interface AnnotationsMeasureEventsOptions { /** * (Highstock) Event callback when annotation is added to the chart. */ add?: any; /** * (Highstock) Event callback when annotation is updated (e.g. drag and * droppped or resized by control points). */ afterUpdate?: any; /** * (Highstock) Event callback when annotation is removed from the chart. */ remove?: any; } /** * (Highstock) A measure annotation. */ export interface AnnotationsMeasureOptions { /** * (Highstock) Options for annotation's control points. Each control point * inherits options from controlPointOptions object. Options from the * controlPointOptions can be overwritten by options in a specific control * point. */ controlPointOptions?: AnnotationsMeasureControlPointOptions; /** * (Highstock) Allow an annotation to be draggable by a user. Possible * values are `"x"`, `"xy"`, `"y"` and `""` (disabled). */ draggable?: OptionsDraggableValue; events?: AnnotationsMeasureEventsOptions; /** * (Highstock) Additional options for an annotation with the type. */ typeOptions?: AnnotationsMeasureTypeOptions; /** * (Highstock) Whether the annotation is visible. */ visible?: boolean; /** * (Highstock) The Z index of the annotation. */ zIndex?: number; } export interface AnnotationsMeasureTypeBackgroundOptions { /** * (Highstock) The color of the rectangle. */ fill?: string; /** * (Highstock) The color of border. */ stroke?: any; /** * (Highstock) The width of border. */ strokeWidth?: number; } /** * (Highstock) Configure a crosshair that is horizontally placed in middle of * rectangle. */ export interface AnnotationsMeasureTypeCrosshairXOptions { /** * (Highstock) The dash or dot style of the crosshair's line. For possible * values, see this demonstration. */ dashStyle?: DashStyleValue; /** * (Highstock) Enable or disable the horizontal crosshair. */ enabled?: boolean; /** * (Highstock) The marker-end defines the arrowhead that will be drawn at * the final vertex of the given crosshair's path. */ markerEnd?: string; /** * (Highstock) The Z index of the crosshair in annotation. */ zIndex?: number; } /** * (Highstock) Configure a crosshair that is vertically placed in middle of * rectangle. */ export interface AnnotationsMeasureTypeCrosshairYOptions { /** * (Highstock) The dash or dot style of the crosshair's line. For possible * values, see this demonstration. */ dashStyle?: DashStyleValue; /** * (Highstock) Enable or disable the vertical crosshair. */ enabled?: boolean; /** * (Highstock) The marker-end defines the arrowhead that will be drawn at * the final vertex of the given crosshair's path. */ markerEnd?: OptionsMarkerEndValue; /** * (Highstock) The Z index of the crosshair in annotation. */ zIndex?: number; } export interface AnnotationsMeasureTypeLabelOptions { /** * (Highstock) Enable or disable the label text (min, max, average, bins * values). * * Defaults to true. */ enabled?: boolean; /** * (Highstock) Formatter function for the label text. * * Available data are: * * (see online documentation for example) */ formatter?: Function; /** * (Highstock) CSS styles for the measure label. */ style?: (AnnotationsMeasureTypeLabelStyleOptions|CSSObject); } /** * (Highstock) CSS styles for the measure label. */ export interface AnnotationsMeasureTypeLabelStyleOptions { color?: string; fontSize?: string; } /** * (Highstock) Line options. */ export interface AnnotationsMeasureTypeLineOptions { fill?: string; } /** * (Highstock) Additional options for an annotation with the type. */ export interface AnnotationsMeasureTypeOptions { background?: AnnotationsMeasureTypeBackgroundOptions; /** * (Highstock) Configure a crosshair that is horizontally placed in middle * of rectangle. */ crosshairX?: AnnotationsMeasureTypeCrosshairXOptions; /** * (Highstock) Configure a crosshair that is vertically placed in middle of * rectangle. */ crosshairY?: AnnotationsMeasureTypeCrosshairYOptions; label?: AnnotationsMeasureTypeLabelOptions; /** * (Highstock) Line options. */ line?: (object|AnnotationsMeasureTypeLineOptions); points?: (AnnotationsMeasureTypePointsOptions|Array<object>); /** * (Highstock) Decides in what dimensions the user can resize by dragging * the mouse. Can be one of x, y or xy. */ selectType?: string; /** * (Highstock) This number defines which xAxis the point is connected to. It * refers to either the axis id or the index of the axis in the xAxis array. */ xAxis?: number; /** * (Highstock) This number defines which yAxis the point is connected to. It * refers to either the axis id or the index of the axis in the yAxis array. */ yAxis?: number; } /** * (Highstock) Options for annotation's labels. Each label inherits options from * the labelOptions object. An option from the labelOptions can be overwritten * by config for a specific label. */ export interface AnnotationsMeasureTypePointsLabelOptions { /** * (Highstock) The alignment of the annotation's label. If right, the right * side of the label should be touching the point. */ align?: AlignValue; /** * (Highstock) Whether to allow the annotation's labels to overlap. To make * the labels less sensitive for overlapping, the can be set to 0. */ allowOverlap?: boolean; /** * (Highstock) The background color or gradient for the annotation's label. */ backgroundColor?: ColorString; /** * (Highstock) The border color for the annotation's label. */ borderColor?: ColorString; /** * (Highstock) The border radius in pixels for the annotaiton's label. */ borderRadius?: number; /** * (Highstock) The border width in pixels for the annotation's label */ borderWidth?: number; /** * (Highstock) A class name for styling by CSS. */ className?: string; /** * (Highstock) Whether to hide the annotation's label that is outside the * plot area. */ crop?: boolean; /** * (Highstock) The label's pixel distance from the point. */ distance?: number; /** * (Highstock) A format string for the data label. */ format?: string; /** * (Highstock) Callback JavaScript function to format the annotation's * label. Note that if a `format` or `text` are defined, the format or text * take precedence and the formatter is ignored. `This` refers to a * point * object. */ formatter?: Function; /** * (Highstock) How to handle the annotation's label that flow outside the * plot area. The justify option aligns the label inside the plot area. */ overflow?: OptionsOverflowValue; /** * (Highstock) When either the borderWidth or the backgroundColor is set, * this is the padding within the box. */ padding?: number; /** * (Highstock) The shadow of the box. The shadow can be an object * configuration containing `color`, `offsetX`, `offsetY`, `opacity` and * `width`. */ shadow?: (boolean|object); /** * (Highstock) The name of a symbol to use for the border around the label. * Symbols are predefined functions on the Renderer object. */ shape?: string; /** * (Highstock) Styles for the annotation's label. */ style?: (AnnotationsMeasureTypePointsLabelStyleOptions|CSSObject); /** * (Highstock) Alias for the format option. */ text?: string; /** * (Highstock) Whether to use HTML to render the annotation's label. */ useHTML?: boolean; /** * (Highstock) The vertical alignment of the annotation's label. */ verticalAlign?: VerticalAlignValue; /** * (Highstock) The x position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ x?: number; /** * (Highstock) The y position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ y?: number; } /** * (Highstock) Styles for the annotation's label. */ export interface AnnotationsMeasureTypePointsLabelStyleOptions { color?: string; fontSize?: string; fontWeight?: string; } export interface AnnotationsMeasureTypePointsOptions { controlPoint?: number; /** * (Highstock) Options for annotation's labels. Each label inherits options * from the labelOptions object. An option from the labelOptions can be * overwritten by config for a specific label. */ label?: (object|AnnotationsMeasureTypePointsLabelOptions); /** * (Highstock) The x position of the point. */ x?: number; /** * (Highstock) The y position of the point. */ y?: number; } /** * (Highcharts, Highstock, Highmaps, Gantt) Options for configuring annotations, * for example labels, arrows or shapes. Annotations can be tied to points, axis * coordinates or chart pixel coordinates. */ export interface AnnotationsOptions { /** * (Highstock) A crooked line annotation. */ crookedLine?: (object|AnnotationsCrookedLineOptions); /** * (Highcharts, Highstock, Highmaps, Gantt) Allow an annotation to be * draggable by a user. Possible values are `"x"`, `"xy"`, `"y"` and `""` * (disabled). */ draggable?: string; /** * (Highstock) An elliott wave annotation. */ elliottWave?: AnnotationsElliottWaveOptions; events?: AnnotationsEventsOptions; /** * (Highstock) A fibonacci annotation. */ fibonacci?: AnnotationsFibonacciOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) Sets an ID for an annotation. * Can be user later when removing an annotation in * Chart.removeAnnotation(id) method. */ id?: string; /** * (Highstock) An infinity line annotation. */ infinityLine?: (object|AnnotationsInfinityLineOptions); /** * (Highcharts, Highstock, Highmaps, Gantt) Options for annotation's labels. * Each label inherits options from the labelOptions object. An option from * the labelOptions can be overwritten by config for a specific label. */ labelOptions?: AnnotationsLabelOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) An array of labels for the * annotation. For options that apply to multiple labels, they can be added * to the labelOptions. */ labels?: Array<AnnotationsLabelsOptions>; /** * (Highstock) A measure annotation. */ measure?: AnnotationsMeasureOptions; /** * (Highstock) A pitchfork annotation. */ pitchfork?: AnnotationsPitchforkOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) Options for annotation's shapes. * Each shape inherits options from the shapeOptions object. An option from * the shapeOptions can be overwritten by config for a specific shape. */ shapeOptions?: AnnotationsShapeOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) An array of shapes for the * annotation. For options that apply to multiple shapes, then can be added * to the shapeOptions. */ shapes?: Array<AnnotationsShapesOptions>; /** * (Highstock) A tunnel annotation. */ tunnel?: AnnotationsTunnelOptions; /** * (Highstock) A vertical line annotation. */ verticalLine?: AnnotationsVerticalLineOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether the annotation is * visible. */ visible?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) The Z index of the annotation. */ zIndex?: number; } export interface AnnotationsPitchforkControlPointEventsOptions { drag?: any; } /** * (Highstock) Options for annotation's control points. Each control point * inherits options from controlPointOptions object. Options from the * controlPointOptions can be overwritten by options in a specific control * point. */ export interface AnnotationsPitchforkControlPointOptions { events?: AnnotationsPitchforkControlPointEventsOptions; height?: number; positioner?: any; style?: AnnotationsPitchforkControlPointStyleOptions; symbol?: string; visible?: boolean; width?: number; } export interface AnnotationsPitchforkControlPointStyleOptions { fill?: string; stroke?: string; "stroke-width"?: number; } export interface AnnotationsPitchforkEventsOptions { /** * (Highstock) Event callback when annotation is added to the chart. */ add?: any; /** * (Highstock) Event callback when annotation is updated (e.g. drag and * droppped or resized by control points). */ afterUpdate?: any; /** * (Highstock) Event callback when annotation is removed from the chart. */ remove?: any; } /** * (Highstock) Options for annotation's labels. Each label inherits options from * the labelOptions object. An option from the labelOptions can be overwritten * by config for a specific label. */ export interface AnnotationsPitchforkLabelOptions { /** * (Highstock) The alignment of the annotation's label. If right, the right * side of the label should be touching the point. */ align?: AlignValue; /** * (Highstock) Whether to allow the annotation's labels to overlap. To make * the labels less sensitive for overlapping, the can be set to 0. */ allowOverlap?: boolean; /** * (Highstock) The background color or gradient for the annotation's label. */ backgroundColor?: ColorString; /** * (Highstock) The border color for the annotation's label. */ borderColor?: ColorString; /** * (Highstock) The border radius in pixels for the annotaiton's label. */ borderRadius?: number; /** * (Highstock) The border width in pixels for the annotation's label */ borderWidth?: number; /** * (Highstock) A class name for styling by CSS. */ className?: string; /** * (Highstock) Whether to hide the annotation's label that is outside the * plot area. */ crop?: boolean; /** * (Highstock) The label's pixel distance from the point. */ distance?: number; /** * (Highstock) A format string for the data label. */ format?: string; /** * (Highstock) Callback JavaScript function to format the annotation's * label. Note that if a `format` or `text` are defined, the format or text * take precedence and the formatter is ignored. `This` refers to a * point * object. */ formatter?: Function; /** * (Highstock) How to handle the annotation's label that flow outside the * plot area. The justify option aligns the label inside the plot area. */ overflow?: OptionsOverflowValue; /** * (Highstock) When either the borderWidth or the backgroundColor is set, * this is the padding within the box. */ padding?: number; /** * (Highstock) The shadow of the box. The shadow can be an object * configuration containing `color`, `offsetX`, `offsetY`, `opacity` and * `width`. */ shadow?: (boolean|object); /** * (Highstock) The name of a symbol to use for the border around the label. * Symbols are predefined functions on the Renderer object. */ shape?: string; /** * (Highstock) Styles for the annotation's label. */ style?: (AnnotationsPitchforkLabelStyleOptions|CSSObject); /** * (Highstock) Alias for the format option. */ text?: string; /** * (Highstock) Whether to use HTML to render the annotation's label. */ useHTML?: boolean; /** * (Highstock) The vertical alignment of the annotation's label. */ verticalAlign?: VerticalAlignValue; /** * (Highstock) The x position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ x?: number; /** * (Highstock) The y position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ y?: number; } /** * (Highstock) An array of labels for the annotation. For options that apply to * multiple labels, they can be added to the labelOptions. */ export interface AnnotationsPitchforkLabelsOptions { /** * (Highstock) The alignment of the annotation's label. If right, the right * side of the label should be touching the point. */ align?: AlignValue; /** * (Highstock) Whether to allow the annotation's labels to overlap. To make * the labels less sensitive for overlapping, the can be set to 0. */ allowOverlap?: boolean; /** * (Highstock) The background color or gradient for the annotation's label. */ backgroundColor?: ColorString; /** * (Highstock) The border color for the annotation's label. */ borderColor?: ColorString; /** * (Highstock) The border radius in pixels for the annotaiton's label. */ borderRadius?: number; /** * (Highstock) The border width in pixels for the annotation's label */ borderWidth?: number; /** * (Highstock) A class name for styling by CSS. */ className?: string; /** * (Highstock) Whether to hide the annotation's label that is outside the * plot area. */ crop?: boolean; /** * (Highstock) The label's pixel distance from the point. */ distance?: number; /** * (Highstock) A format string for the data label. */ format?: string; /** * (Highstock) Callback JavaScript function to format the annotation's * label. Note that if a `format` or `text` are defined, the format or text * take precedence and the formatter is ignored. `This` refers to a * point * object. */ formatter?: Function; /** * (Highstock) How to handle the annotation's label that flow outside the * plot area. The justify option aligns the label inside the plot area. */ overflow?: OptionsOverflowValue; /** * (Highstock) When either the borderWidth or the backgroundColor is set, * this is the padding within the box. */ padding?: number; /** * (Highstock) This option defines the point to which the label will be * connected. It can be either the point which exists in the series - it is * referenced by the point's id - or a new point with defined x, y properies * and optionally axes. */ point?: (object|string|AnnotationsPitchforkLabelsPointOptions); /** * (Highstock) The shadow of the box. The shadow can be an object * configuration containing `color`, `offsetX`, `offsetY`, `opacity` and * `width`. */ shadow?: (boolean|object); /** * (Highstock) The name of a symbol to use for the border around the label. * Symbols are predefined functions on the Renderer object. */ shape?: string; /** * (Highstock) Styles for the annotation's label. */ style?: (AnnotationsPitchforkLabelsStyleOptions|CSSObject); /** * (Highstock) Alias for the format option. */ text?: string; /** * (Highstock) Whether to use HTML to render the annotation's label. */ useHTML?: boolean; /** * (Highstock) The vertical alignment of the annotation's label. */ verticalAlign?: VerticalAlignValue; /** * (Highstock) The x position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ x?: number; /** * (Highstock) The y position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ y?: number; } /** * (Highstock) This option defines the point to which the label will be * connected. It can be either the point which exists in the series - it is * referenced by the point's id - or a new point with defined x, y properies and * optionally axes. */ export interface AnnotationsPitchforkLabelsPointOptions { /** * (Highstock) The x position of the point. Units can be either in axis or * chart pixel coordinates. */ x?: number; /** * (Highstock) This number defines which xAxis the point is connected to. It * refers to either the axis id or the index of the axis in the xAxis array. * If the option is not configured or the axis is not found the point's x * coordinate refers to the chart pixels. */ xAxis?: (number|string); /** * (Highstock) The y position of the point. Units can be either in axis or * chart pixel coordinates. */ y?: number; /** * (Highstock) This number defines which yAxis the point is connected to. It * refers to either the axis id or the index of the axis in the yAxis array. * If the option is not configured or the axis is not found the point's y * coordinate refers to the chart pixels. */ yAxis?: (number|string); } /** * (Highstock) Styles for the annotation's label. */ export interface AnnotationsPitchforkLabelsStyleOptions { color?: string; fontSize?: string; fontWeight?: string; } /** * (Highstock) Styles for the annotation's label. */ export interface AnnotationsPitchforkLabelStyleOptions { color?: string; fontSize?: string; fontWeight?: string; } /** * (Highstock) A pitchfork annotation. */ export interface AnnotationsPitchforkOptions { /** * (Highstock) Options for annotation's control points. Each control point * inherits options from controlPointOptions object. Options from the * controlPointOptions can be overwritten by options in a specific control * point. */ controlPointOptions?: (object|AnnotationsPitchforkControlPointOptions); /** * (Highstock) Allow an annotation to be draggable by a user. Possible * values are `"x"`, `"xy"`, `"y"` and `""` (disabled). */ draggable?: OptionsDraggableValue; events?: AnnotationsPitchforkEventsOptions; /** * (Highstock) Options for annotation's labels. Each label inherits options * from the labelOptions object. An option from the labelOptions can be * overwritten by config for a specific label. */ labelOptions?: AnnotationsPitchforkLabelOptions; /** * (Highstock) An array of labels for the annotation. For options that apply * to multiple labels, they can be added to the labelOptions. */ labels?: (AnnotationsPitchforkLabelsOptions|Array<object>); /** * (Highstock) Options for annotation's shapes. Each shape inherits options * from the shapeOptions object. An option from the shapeOptions can be * overwritten by config for a specific shape. */ shapeOptions?: (object|AnnotationsPitchforkShapeOptions); /** * (Highstock) An array of shapes for the annotation. For options that apply * to multiple shapes, then can be added to the shapeOptions. */ shapes?: (AnnotationsPitchforkShapesOptions|Array<object>); /** * (Highstock) Additional options for an annotation with the type. */ typeOptions?: AnnotationsPitchforkTypeOptions; /** * (Highstock) Whether the annotation is visible. */ visible?: boolean; /** * (Highstock) The Z index of the annotation. */ zIndex?: number; } /** * (Highstock) Options for annotation's shapes. Each shape inherits options from * the shapeOptions object. An option from the shapeOptions can be overwritten * by config for a specific shape. */ export interface AnnotationsPitchforkShapeOptions { /** * (Highstock) The color of the shape's fill. */ fill?: ColorString; /** * (Highstock) The height of the shape. */ height?: number; /** * (Highstock) The radius of the shape. */ r?: number; /** * (Highstock) Defines additional snapping area around an annotation making * this annotation to focus. Defined in pixels. */ snap?: number; /** * (Highstock) The color of the shape's stroke. */ stroke?: ColorString; /** * (Highstock) The pixel stroke width of the shape. */ strokeWidth?: number; /** * (Highstock) The type of the shape, e.g. circle or rectangle. */ type?: string; /** * (Highstock) The width of the shape. */ width?: number; } /** * (Highstock) An array of shapes for the annotation. For options that apply to * multiple shapes, then can be added to the shapeOptions. */ export interface AnnotationsPitchforkShapesOptions { /** * (Highstock) The color of the shape's fill. */ fill?: ColorString; /** * (Highstock) The height of the shape. */ height?: number; /** * (Highstock) Id of the marker which will be drawn at the final vertex of * the path. Custom markers can be defined in defs property. */ markerEnd?: string; /** * (Highstock) Id of the marker which will be drawn at the first vertex of * the path. Custom markers can be defined in defs property. */ markerStart?: string; /** * (Highstock) This option defines the point to which the shape will be * connected. It can be either the point which exists in the series - it is * referenced by the point's id - or a new point with defined x, y * properties and optionally axes. */ point?: (object|string|AnnotationsPitchforkShapesPointOptions); /** * (Highstock) An array of points for the shape. This option is available * for shapes which can use multiple points such as path. A point can be * either a point object or a point's id. */ points?: Array<(string|object)>; /** * (Highstock) The radius of the shape. */ r?: number; /** * (Highstock) Defines additional snapping area around an annotation making * this annotation to focus. Defined in pixels. */ snap?: number; /** * (Highstock) The color of the shape's stroke. */ stroke?: ColorString; /** * (Highstock) The pixel stroke width of the shape. */ strokeWidth?: number; /** * (Highstock) The type of the shape, e.g. circle or rectangle. */ type?: string; /** * (Highstock) The width of the shape. */ width?: number; } /** * (Highstock) This option defines the point to which the shape will be * connected. It can be either the point which exists in the series - it is * referenced by the point's id - or a new point with defined x, y properties * and optionally axes. */ export interface AnnotationsPitchforkShapesPointOptions { /** * (Highstock) The x position of the point. Units can be either in axis or * chart pixel coordinates. */ x?: number; /** * (Highstock) This number defines which xAxis the point is connected to. It * refers to either the axis id or the index of the axis in the xAxis array. * If the option is not configured or the axis is not found the point's x * coordinate refers to the chart pixels. */ xAxis?: (number|string); /** * (Highstock) The y position of the point. Units can be either in axis or * chart pixel coordinates. */ y?: number; /** * (Highstock) This number defines which yAxis the point is connected to. It * refers to either the axis id or the index of the axis in the yAxis array. * If the option is not configured or the axis is not found the point's y * coordinate refers to the chart pixels. */ yAxis?: (number|string); } /** * (Highstock) Inner background options. */ export interface AnnotationsPitchforkTypeInnerBackgroundOptions { /** * (Highstock) The color of the shape's fill. */ fill?: string; /** * (Highstock) Defines additional snapping area around an annotation making * this annotation to focus. Defined in pixels. */ snap?: number; /** * (Highstock) The color of the shape's stroke. */ stroke?: ColorString; /** * (Highstock) The pixel stroke width of the shape. */ strokeWidth?: number; } /** * (Highstock) Line options. */ export interface AnnotationsPitchforkTypeLineOptions { fill?: string; } /** * (Highstock) Additional options for an annotation with the type. */ export interface AnnotationsPitchforkTypeOptions { /** * (Highstock) Inner background options. */ innerBackground?: AnnotationsPitchforkTypeInnerBackgroundOptions; /** * (Highstock) Line options. */ line?: (object|AnnotationsPitchforkTypeLineOptions); /** * (Highstock) Outer background options. */ outerBackground?: AnnotationsPitchforkTypeOuterBackgroundOptions; points?: (AnnotationsPitchforkTypePointsOptions|Array<object>); /** * (Highstock) This number defines which xAxis the point is connected to. It * refers to either the axis id or the index of the axis in the xAxis array. */ xAxis?: number; /** * (Highstock) This number defines which yAxis the point is connected to. It * refers to either the axis id or the index of the axis in the xAxis array. */ yAxis?: number; } /** * (Highstock) Outer background options. */ export interface AnnotationsPitchforkTypeOuterBackgroundOptions { /** * (Highstock) The color of the shape's fill. */ fill?: string; /** * (Highstock) Defines additional snapping area around an annotation making * this annotation to focus. Defined in pixels. */ snap?: number; /** * (Highstock) The color of the shape's stroke. */ stroke?: ColorString; /** * (Highstock) The pixel stroke width of the shape. */ strokeWidth?: number; } /** * (Highstock) Options for annotation's labels. Each label inherits options from * the labelOptions object. An option from the labelOptions can be overwritten * by config for a specific label. */ export interface AnnotationsPitchforkTypePointsLabelOptions { /** * (Highstock) The alignment of the annotation's label. If right, the right * side of the label should be touching the point. */ align?: AlignValue; /** * (Highstock) Whether to allow the annotation's labels to overlap. To make * the labels less sensitive for overlapping, the can be set to 0. */ allowOverlap?: boolean; /** * (Highstock) The background color or gradient for the annotation's label. */ backgroundColor?: ColorString; /** * (Highstock) The border color for the annotation's label. */ borderColor?: ColorString; /** * (Highstock) The border radius in pixels for the annotaiton's label. */ borderRadius?: number; /** * (Highstock) The border width in pixels for the annotation's label */ borderWidth?: number; /** * (Highstock) A class name for styling by CSS. */ className?: string; /** * (Highstock) Whether to hide the annotation's label that is outside the * plot area. */ crop?: boolean; /** * (Highstock) The label's pixel distance from the point. */ distance?: number; /** * (Highstock) A format string for the data label. */ format?: string; /** * (Highstock) Callback JavaScript function to format the annotation's * label. Note that if a `format` or `text` are defined, the format or text * take precedence and the formatter is ignored. `This` refers to a * point * object. */ formatter?: Function; /** * (Highstock) How to handle the annotation's label that flow outside the * plot area. The justify option aligns the label inside the plot area. */ overflow?: OptionsOverflowValue; /** * (Highstock) When either the borderWidth or the backgroundColor is set, * this is the padding within the box. */ padding?: number; /** * (Highstock) The shadow of the box. The shadow can be an object * configuration containing `color`, `offsetX`, `offsetY`, `opacity` and * `width`. */ shadow?: (boolean|object); /** * (Highstock) The name of a symbol to use for the border around the label. * Symbols are predefined functions on the Renderer object. */ shape?: string; /** * (Highstock) Styles for the annotation's label. */ style?: (AnnotationsPitchforkTypePointsLabelStyleOptions|CSSObject); /** * (Highstock) Alias for the format option. */ text?: string; /** * (Highstock) Whether to use HTML to render the annotation's label. */ useHTML?: boolean; /** * (Highstock) The vertical alignment of the annotation's label. */ verticalAlign?: VerticalAlignValue; /** * (Highstock) The x position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ x?: number; /** * (Highstock) The y position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ y?: number; } /** * (Highstock) Styles for the annotation's label. */ export interface AnnotationsPitchforkTypePointsLabelStyleOptions { color?: string; fontSize?: string; fontWeight?: string; } export interface AnnotationsPitchforkTypePointsOptions { controlPoint?: number; /** * (Highstock) Options for annotation's labels. Each label inherits options * from the labelOptions object. An option from the labelOptions can be * overwritten by config for a specific label. */ label?: (object|AnnotationsPitchforkTypePointsLabelOptions); /** * (Highstock) The x position of the point. */ x?: number; /** * (Highstock) The y position of the point. */ y?: number; } /** * (Highcharts, Highstock, Highmaps, Gantt) Options for annotation's shapes. * Each shape inherits options from the shapeOptions object. An option from the * shapeOptions can be overwritten by config for a specific shape. */ export interface AnnotationsShapeOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) The color of the shape's fill. */ fill?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Highmaps, Gantt) The height of the shape. */ height?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The radius of the shape. */ r?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The color of the shape's stroke. */ stroke?: ColorString; /** * (Highcharts, Highstock, Highmaps, Gantt) The pixel stroke width of the * shape. */ strokeWidth?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The type of the shape, e.g. * circle or rectangle. */ type?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) The width of the shape. */ width?: number; } /** * (Highcharts, Highstock, Highmaps, Gantt) An array of shapes for the * annotation. For options that apply to multiple shapes, then can be added to * the shapeOptions. */ export interface AnnotationsShapesOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) The color of the shape's fill. */ fill?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Highmaps, Gantt) The height of the shape. */ height?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) Id of the marker which will be * drawn at the final vertex of the path. Custom markers can be defined in * defs property. */ markerEnd?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Id of the marker which will be * drawn at the first vertex of the path. Custom markers can be defined in * defs property. */ markerStart?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) This option defines the point to * which the shape will be connected. It can be either the point which * exists in the series - it is referenced by the point's id - or a new * point with defined x, y properties and optionally axes. */ point?: (string|AnnotationsShapesPointOptions); /** * (Highcharts, Highstock, Highmaps, Gantt) An array of points for the * shape. This option is available for shapes which can use multiple points * such as path. A point can be either a point object or a point's id. */ points?: Array<AnnotationsShapesPointsOptions>; /** * (Highcharts, Highstock, Highmaps, Gantt) The radius of the shape. */ r?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The color of the shape's stroke. */ stroke?: ColorString; /** * (Highcharts, Highstock, Highmaps, Gantt) The pixel stroke width of the * shape. */ strokeWidth?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The type of the shape, e.g. * circle or rectangle. */ type?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) The width of the shape. */ width?: number; } /** * (Highcharts, Highstock, Highmaps, Gantt) This option defines the point to * which the shape will be connected. It can be either the point which exists in * the series - it is referenced by the point's id - or a new point with defined * x, y properties and optionally axes. */ export interface AnnotationsShapesPointOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) The x position of the point. * Units can be either in axis or chart pixel coordinates. */ x?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) This number defines which xAxis * the point is connected to. It refers to either the axis id or the index * of the axis in the xAxis array. If the option is not configured or the * axis is not found the point's x coordinate refers to the chart pixels. */ xAxis?: (number|string); /** * (Highcharts, Highstock, Highmaps, Gantt) The y position of the point. * Units can be either in axis or chart pixel coordinates. */ y?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) This number defines which yAxis * the point is connected to. It refers to either the axis id or the index * of the axis in the yAxis array. If the option is not configured or the * axis is not found the point's y coordinate refers to the chart pixels. */ yAxis?: (number|string); } /** * (Highcharts, Highstock, Highmaps, Gantt) An array of points for the shape. * This option is available for shapes which can use multiple points such as * path. A point can be either a point object or a point's id. */ export interface AnnotationsShapesPointsOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) The x position of the point. * Units can be either in axis or chart pixel coordinates. */ x?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) This number defines which xAxis * the point is connected to. It refers to either the axis id or the index * of the axis in the xAxis array. If the option is not configured or the * axis is not found the point's x coordinate refers to the chart pixels. */ xAxis?: (number|string); /** * (Highcharts, Highstock, Highmaps, Gantt) The y position of the point. * Units can be either in axis or chart pixel coordinates. */ y?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) This number defines which yAxis * the point is connected to. It refers to either the axis id or the index * of the axis in the yAxis array. If the option is not configured or the * axis is not found the point's y coordinate refers to the chart pixels. */ yAxis?: (number|string); } export interface AnnotationsTunnelControlPointEventsOptions { drag?: any; } /** * (Highstock) Options for annotation's control points. Each control point * inherits options from controlPointOptions object. Options from the * controlPointOptions can be overwritten by options in a specific control * point. */ export interface AnnotationsTunnelControlPointOptions { events?: AnnotationsTunnelControlPointEventsOptions; height?: number; style?: AnnotationsTunnelControlPointStyleOptions; symbol?: string; visible?: boolean; width?: number; } export interface AnnotationsTunnelControlPointStyleOptions { fill?: string; stroke?: string; "stroke-width"?: number; } export interface AnnotationsTunnelEventsOptions { /** * (Highstock) Event callback when annotation is added to the chart. */ add?: any; /** * (Highstock) Event callback when annotation is updated (e.g. drag and * droppped or resized by control points). */ afterUpdate?: any; /** * (Highstock) Event callback when annotation is removed from the chart. */ remove?: any; } /** * (Highstock) Options for annotation's labels. Each label inherits options from * the labelOptions object. An option from the labelOptions can be overwritten * by config for a specific label. */ export interface AnnotationsTunnelLabelOptions { /** * (Highstock) The alignment of the annotation's label. If right, the right * side of the label should be touching the point. */ align?: AlignValue; /** * (Highstock) Whether to allow the annotation's labels to overlap. To make * the labels less sensitive for overlapping, the can be set to 0. */ allowOverlap?: boolean; /** * (Highstock) The background color or gradient for the annotation's label. */ backgroundColor?: ColorString; /** * (Highstock) The border color for the annotation's label. */ borderColor?: ColorString; /** * (Highstock) The border radius in pixels for the annotaiton's label. */ borderRadius?: number; /** * (Highstock) The border width in pixels for the annotation's label */ borderWidth?: number; /** * (Highstock) A class name for styling by CSS. */ className?: string; /** * (Highstock) Whether to hide the annotation's label that is outside the * plot area. */ crop?: boolean; /** * (Highstock) The label's pixel distance from the point. */ distance?: number; /** * (Highstock) A format string for the data label. */ format?: string; /** * (Highstock) Callback JavaScript function to format the annotation's * label. Note that if a `format` or `text` are defined, the format or text * take precedence and the formatter is ignored. `This` refers to a * point * object. */ formatter?: Function; /** * (Highstock) How to handle the annotation's label that flow outside the * plot area. The justify option aligns the label inside the plot area. */ overflow?: OptionsOverflowValue; /** * (Highstock) When either the borderWidth or the backgroundColor is set, * this is the padding within the box. */ padding?: number; /** * (Highstock) The shadow of the box. The shadow can be an object * configuration containing `color`, `offsetX`, `offsetY`, `opacity` and * `width`. */ shadow?: (boolean|object); /** * (Highstock) The name of a symbol to use for the border around the label. * Symbols are predefined functions on the Renderer object. */ shape?: string; /** * (Highstock) Styles for the annotation's label. */ style?: (AnnotationsTunnelLabelStyleOptions|CSSObject); /** * (Highstock) Alias for the format option. */ text?: string; /** * (Highstock) Whether to use HTML to render the annotation's label. */ useHTML?: boolean; /** * (Highstock) The vertical alignment of the annotation's label. */ verticalAlign?: VerticalAlignValue; /** * (Highstock) The x position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ x?: number; /** * (Highstock) The y position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ y?: number; } /** * (Highstock) An array of labels for the annotation. For options that apply to * multiple labels, they can be added to the labelOptions. */ export interface AnnotationsTunnelLabelsOptions { /** * (Highstock) The alignment of the annotation's label. If right, the right * side of the label should be touching the point. */ align?: AlignValue; /** * (Highstock) Whether to allow the annotation's labels to overlap. To make * the labels less sensitive for overlapping, the can be set to 0. */ allowOverlap?: boolean; /** * (Highstock) The background color or gradient for the annotation's label. */ backgroundColor?: ColorString; /** * (Highstock) The border color for the annotation's label. */ borderColor?: ColorString; /** * (Highstock) The border radius in pixels for the annotaiton's label. */ borderRadius?: number; /** * (Highstock) The border width in pixels for the annotation's label */ borderWidth?: number; /** * (Highstock) A class name for styling by CSS. */ className?: string; /** * (Highstock) Whether to hide the annotation's label that is outside the * plot area. */ crop?: boolean; /** * (Highstock) The label's pixel distance from the point. */ distance?: number; /** * (Highstock) A format string for the data label. */ format?: string; /** * (Highstock) Callback JavaScript function to format the annotation's * label. Note that if a `format` or `text` are defined, the format or text * take precedence and the formatter is ignored. `This` refers to a * point * object. */ formatter?: Function; /** * (Highstock) How to handle the annotation's label that flow outside the * plot area. The justify option aligns the label inside the plot area. */ overflow?: OptionsOverflowValue; /** * (Highstock) When either the borderWidth or the backgroundColor is set, * this is the padding within the box. */ padding?: number; /** * (Highstock) This option defines the point to which the label will be * connected. It can be either the point which exists in the series - it is * referenced by the point's id - or a new point with defined x, y properies * and optionally axes. */ point?: (object|string|AnnotationsTunnelLabelsPointOptions); /** * (Highstock) The shadow of the box. The shadow can be an object * configuration containing `color`, `offsetX`, `offsetY`, `opacity` and * `width`. */ shadow?: (boolean|object); /** * (Highstock) The name of a symbol to use for the border around the label. * Symbols are predefined functions on the Renderer object. */ shape?: string; /** * (Highstock) Styles for the annotation's label. */ style?: (AnnotationsTunnelLabelsStyleOptions|CSSObject); /** * (Highstock) Alias for the format option. */ text?: string; /** * (Highstock) Whether to use HTML to render the annotation's label. */ useHTML?: boolean; /** * (Highstock) The vertical alignment of the annotation's label. */ verticalAlign?: VerticalAlignValue; /** * (Highstock) The x position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ x?: number; /** * (Highstock) The y position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ y?: number; } /** * (Highstock) This option defines the point to which the label will be * connected. It can be either the point which exists in the series - it is * referenced by the point's id - or a new point with defined x, y properies and * optionally axes. */ export interface AnnotationsTunnelLabelsPointOptions { /** * (Highstock) The x position of the point. Units can be either in axis or * chart pixel coordinates. */ x?: number; /** * (Highstock) This number defines which xAxis the point is connected to. It * refers to either the axis id or the index of the axis in the xAxis array. * If the option is not configured or the axis is not found the point's x * coordinate refers to the chart pixels. */ xAxis?: (number|string); /** * (Highstock) The y position of the point. Units can be either in axis or * chart pixel coordinates. */ y?: number; /** * (Highstock) This number defines which yAxis the point is connected to. It * refers to either the axis id or the index of the axis in the yAxis array. * If the option is not configured or the axis is not found the point's y * coordinate refers to the chart pixels. */ yAxis?: (number|string); } /** * (Highstock) Styles for the annotation's label. */ export interface AnnotationsTunnelLabelsStyleOptions { color?: string; fontSize?: string; fontWeight?: string; } /** * (Highstock) Styles for the annotation's label. */ export interface AnnotationsTunnelLabelStyleOptions { color?: string; fontSize?: string; fontWeight?: string; } /** * (Highstock) A tunnel annotation. */ export interface AnnotationsTunnelOptions { /** * (Highstock) Options for annotation's control points. Each control point * inherits options from controlPointOptions object. Options from the * controlPointOptions can be overwritten by options in a specific control * point. */ controlPointOptions?: AnnotationsTunnelControlPointOptions; /** * (Highstock) Allow an annotation to be draggable by a user. Possible * values are `"x"`, `"xy"`, `"y"` and `""` (disabled). */ draggable?: OptionsDraggableValue; events?: AnnotationsTunnelEventsOptions; /** * (Highstock) Options for annotation's labels. Each label inherits options * from the labelOptions object. An option from the labelOptions can be * overwritten by config for a specific label. */ labelOptions?: AnnotationsTunnelLabelOptions; /** * (Highstock) An array of labels for the annotation. For options that apply * to multiple labels, they can be added to the labelOptions. */ labels?: (AnnotationsTunnelLabelsOptions|Array<object>); /** * (Highstock) Options for annotation's shapes. Each shape inherits options * from the shapeOptions object. An option from the shapeOptions can be * overwritten by config for a specific shape. */ shapeOptions?: (object|AnnotationsTunnelShapeOptions); /** * (Highstock) An array of shapes for the annotation. For options that apply * to multiple shapes, then can be added to the shapeOptions. */ shapes?: (AnnotationsTunnelShapesOptions|Array<object>); /** * (Highstock) Additional options for an annotation with the type. */ typeOptions?: AnnotationsTunnelTypeOptions; /** * (Highstock) Whether the annotation is visible. */ visible?: boolean; /** * (Highstock) The Z index of the annotation. */ zIndex?: number; } /** * (Highstock) Options for annotation's shapes. Each shape inherits options from * the shapeOptions object. An option from the shapeOptions can be overwritten * by config for a specific shape. */ export interface AnnotationsTunnelShapeOptions { /** * (Highstock) The color of the shape's fill. */ fill?: ColorString; /** * (Highstock) The height of the shape. */ height?: number; /** * (Highstock) The radius of the shape. */ r?: number; /** * (Highstock) Defines additional snapping area around an annotation making * this annotation to focus. Defined in pixels. */ snap?: number; /** * (Highstock) The color of the shape's stroke. */ stroke?: ColorString; /** * (Highstock) The pixel stroke width of the shape. */ strokeWidth?: number; /** * (Highstock) The type of the shape, e.g. circle or rectangle. */ type?: string; /** * (Highstock) The width of the shape. */ width?: number; } /** * (Highstock) An array of shapes for the annotation. For options that apply to * multiple shapes, then can be added to the shapeOptions. */ export interface AnnotationsTunnelShapesOptions { /** * (Highstock) The color of the shape's fill. */ fill?: ColorString; /** * (Highstock) The height of the shape. */ height?: number; /** * (Highstock) Id of the marker which will be drawn at the final vertex of * the path. Custom markers can be defined in defs property. */ markerEnd?: string; /** * (Highstock) Id of the marker which will be drawn at the first vertex of * the path. Custom markers can be defined in defs property. */ markerStart?: string; /** * (Highstock) This option defines the point to which the shape will be * connected. It can be either the point which exists in the series - it is * referenced by the point's id - or a new point with defined x, y * properties and optionally axes. */ point?: (object|string|AnnotationsTunnelShapesPointOptions); /** * (Highstock) An array of points for the shape. This option is available * for shapes which can use multiple points such as path. A point can be * either a point object or a point's id. */ points?: Array<(string|object)>; /** * (Highstock) The radius of the shape. */ r?: number; /** * (Highstock) Defines additional snapping area around an annotation making * this annotation to focus. Defined in pixels. */ snap?: number; /** * (Highstock) The color of the shape's stroke. */ stroke?: ColorString; /** * (Highstock) The pixel stroke width of the shape. */ strokeWidth?: number; /** * (Highstock) The type of the shape, e.g. circle or rectangle. */ type?: string; /** * (Highstock) The width of the shape. */ width?: number; } /** * (Highstock) This option defines the point to which the shape will be * connected. It can be either the point which exists in the series - it is * referenced by the point's id - or a new point with defined x, y properties * and optionally axes. */ export interface AnnotationsTunnelShapesPointOptions { /** * (Highstock) The x position of the point. Units can be either in axis or * chart pixel coordinates. */ x?: number; /** * (Highstock) This number defines which xAxis the point is connected to. It * refers to either the axis id or the index of the axis in the xAxis array. * If the option is not configured or the axis is not found the point's x * coordinate refers to the chart pixels. */ xAxis?: (number|string); /** * (Highstock) The y position of the point. Units can be either in axis or * chart pixel coordinates. */ y?: number; /** * (Highstock) This number defines which yAxis the point is connected to. It * refers to either the axis id or the index of the axis in the yAxis array. * If the option is not configured or the axis is not found the point's y * coordinate refers to the chart pixels. */ yAxis?: (number|string); } /** * (Highstock) Background options. */ export interface AnnotationsTunnelTypeBackgroundOptions { fill?: string; strokeWidth?: number; } export interface AnnotationsTunnelTypeHeightControlPointEventsOptions { drag?: any; } /** * (Highstock) Options for the control point which controls the annotation's * height. */ export interface AnnotationsTunnelTypeHeightControlPointOptions { events?: AnnotationsTunnelTypeHeightControlPointEventsOptions; height?: number; positioner?: any; style?: AnnotationsTunnelTypeHeightControlPointStyleOptions; symbol?: string; visible?: boolean; width?: number; } export interface AnnotationsTunnelTypeHeightControlPointStyleOptions { fill?: string; stroke?: string; "stroke-width"?: number; } /** * (Highstock) Line options. */ export interface AnnotationsTunnelTypeLineOptions { fill?: string; strokeWidth?: number; } /** * (Highstock) Additional options for an annotation with the type. */ export interface AnnotationsTunnelTypeOptions { /** * (Highstock) Background options. */ background?: (object|AnnotationsTunnelTypeBackgroundOptions); /** * (Highstock) The height of the annotation in terms of yAxis. */ height?: number; /** * (Highstock) Options for the control point which controls the annotation's * height. */ heightControlPoint?: AnnotationsTunnelTypeHeightControlPointOptions; /** * (Highstock) Line options. */ line?: AnnotationsTunnelTypeLineOptions; points?: (AnnotationsTunnelTypePointsOptions|Array<object>); /** * (Highstock) This number defines which xAxis the point is connected to. It * refers to either the axis id or the index of the axis in the xAxis array. */ xAxis?: number; /** * (Highstock) This number defines which yAxis the point is connected to. It * refers to either the axis id or the index of the axis in the xAxis array. */ yAxis?: number; } /** * (Highstock) Options for annotation's labels. Each label inherits options from * the labelOptions object. An option from the labelOptions can be overwritten * by config for a specific label. */ export interface AnnotationsTunnelTypePointsLabelOptions { /** * (Highstock) The alignment of the annotation's label. If right, the right * side of the label should be touching the point. */ align?: AlignValue; /** * (Highstock) Whether to allow the annotation's labels to overlap. To make * the labels less sensitive for overlapping, the can be set to 0. */ allowOverlap?: boolean; /** * (Highstock) The background color or gradient for the annotation's label. */ backgroundColor?: ColorString; /** * (Highstock) The border color for the annotation's label. */ borderColor?: ColorString; /** * (Highstock) The border radius in pixels for the annotaiton's label. */ borderRadius?: number; /** * (Highstock) The border width in pixels for the annotation's label */ borderWidth?: number; /** * (Highstock) A class name for styling by CSS. */ className?: string; /** * (Highstock) Whether to hide the annotation's label that is outside the * plot area. */ crop?: boolean; /** * (Highstock) The label's pixel distance from the point. */ distance?: number; /** * (Highstock) A format string for the data label. */ format?: string; /** * (Highstock) Callback JavaScript function to format the annotation's * label. Note that if a `format` or `text` are defined, the format or text * take precedence and the formatter is ignored. `This` refers to a * point * object. */ formatter?: Function; /** * (Highstock) How to handle the annotation's label that flow outside the * plot area. The justify option aligns the label inside the plot area. */ overflow?: OptionsOverflowValue; /** * (Highstock) When either the borderWidth or the backgroundColor is set, * this is the padding within the box. */ padding?: number; /** * (Highstock) The shadow of the box. The shadow can be an object * configuration containing `color`, `offsetX`, `offsetY`, `opacity` and * `width`. */ shadow?: (boolean|object); /** * (Highstock) The name of a symbol to use for the border around the label. * Symbols are predefined functions on the Renderer object. */ shape?: string; /** * (Highstock) Styles for the annotation's label. */ style?: (AnnotationsTunnelTypePointsLabelStyleOptions|CSSObject); /** * (Highstock) Alias for the format option. */ text?: string; /** * (Highstock) Whether to use HTML to render the annotation's label. */ useHTML?: boolean; /** * (Highstock) The vertical alignment of the annotation's label. */ verticalAlign?: VerticalAlignValue; /** * (Highstock) The x position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ x?: number; /** * (Highstock) The y position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ y?: number; } /** * (Highstock) Styles for the annotation's label. */ export interface AnnotationsTunnelTypePointsLabelStyleOptions { color?: string; fontSize?: string; fontWeight?: string; } export interface AnnotationsTunnelTypePointsOptions { controlPoint?: number; /** * (Highstock) Options for annotation's labels. Each label inherits options * from the labelOptions object. An option from the labelOptions can be * overwritten by config for a specific label. */ label?: (object|AnnotationsTunnelTypePointsLabelOptions); /** * (Highstock) The x position of the point. */ x?: number; /** * (Highstock) The y position of the point. */ y?: number; } export interface AnnotationsVerticalLineEventsOptions { /** * (Highstock) Event callback when annotation is added to the chart. */ add?: any; /** * (Highstock) Event callback when annotation is updated (e.g. drag and * droppped or resized by control points). */ afterUpdate?: any; /** * (Highstock) Event callback when annotation is removed from the chart. */ remove?: any; } /** * (Highstock) Options for annotation's labels. Each label inherits options from * the labelOptions object. An option from the labelOptions can be overwritten * by config for a specific label. */ export interface AnnotationsVerticalLineLabelOptions { /** * (Highstock) The alignment of the annotation's label. If right, the right * side of the label should be touching the point. */ align?: AlignValue; /** * (Highstock) Whether to allow the annotation's labels to overlap. To make * the labels less sensitive for overlapping, the can be set to 0. */ allowOverlap?: boolean; /** * (Highstock) The background color or gradient for the annotation's label. */ backgroundColor?: ColorString; /** * (Highstock) The border color for the annotation's label. */ borderColor?: ColorString; /** * (Highstock) The border radius in pixels for the annotaiton's label. */ borderRadius?: number; /** * (Highstock) The border width in pixels for the annotation's label */ borderWidth?: number; /** * (Highstock) A class name for styling by CSS. */ className?: string; /** * (Highstock) Whether to hide the annotation's label that is outside the * plot area. */ crop?: boolean; /** * (Highstock) The label's pixel distance from the point. */ distance?: number; /** * (Highstock) A format string for the data label. */ format?: string; /** * (Highstock) Callback JavaScript function to format the annotation's * label. Note that if a `format` or `text` are defined, the format or text * take precedence and the formatter is ignored. `This` refers to a * point * object. */ formatter?: Function; /** * (Highstock) How to handle the annotation's label that flow outside the * plot area. The justify option aligns the label inside the plot area. */ overflow?: OptionsOverflowValue; /** * (Highstock) When either the borderWidth or the backgroundColor is set, * this is the padding within the box. */ padding?: number; /** * (Highstock) The shadow of the box. The shadow can be an object * configuration containing `color`, `offsetX`, `offsetY`, `opacity` and * `width`. */ shadow?: (boolean|object); /** * (Highstock) The name of a symbol to use for the border around the label. * Symbols are predefined functions on the Renderer object. */ shape?: string; /** * (Highstock) Styles for the annotation's label. */ style?: (AnnotationsVerticalLineLabelStyleOptions|CSSObject); /** * (Highstock) Alias for the format option. */ text?: string; /** * (Highstock) Whether to use HTML to render the annotation's label. */ useHTML?: boolean; /** * (Highstock) The vertical alignment of the annotation's label. */ verticalAlign?: VerticalAlignValue; /** * (Highstock) The x position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ x?: number; /** * (Highstock) The y position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ y?: number; } /** * (Highstock) Styles for the annotation's label. */ export interface AnnotationsVerticalLineLabelStyleOptions { color?: string; fontSize?: string; fontWeight?: string; } /** * (Highstock) A vertical line annotation. */ export interface AnnotationsVerticalLineOptions { /** * (Highstock) Allow an annotation to be draggable by a user. Possible * values are `"x"`, `"xy"`, `"y"` and `""` (disabled). */ draggable?: OptionsDraggableValue; events?: AnnotationsVerticalLineEventsOptions; /** * (Highstock) Options for annotation's labels. Each label inherits options * from the labelOptions object. An option from the labelOptions can be * overwritten by config for a specific label. */ labelOptions?: AnnotationsVerticalLineLabelOptions; /** * (Highstock) Options for annotation's shapes. Each shape inherits options * from the shapeOptions object. An option from the shapeOptions can be * overwritten by config for a specific shape. */ shapeOptions?: (object|AnnotationsVerticalLineShapeOptions); /** * (Highstock) Additional options for an annotation with the type. */ typeOptions?: AnnotationsVerticalLineTypeOptions; /** * (Highstock) Whether the annotation is visible. */ visible?: boolean; /** * (Highstock) The Z index of the annotation. */ zIndex?: number; } /** * (Highstock) Options for annotation's shapes. Each shape inherits options from * the shapeOptions object. An option from the shapeOptions can be overwritten * by config for a specific shape. */ export interface AnnotationsVerticalLineShapeOptions { /** * (Highstock) The color of the shape's fill. */ fill?: ColorString; /** * (Highstock) The height of the shape. */ height?: number; /** * (Highstock) The radius of the shape. */ r?: number; /** * (Highstock) Defines additional snapping area around an annotation making * this annotation to focus. Defined in pixels. */ snap?: number; /** * (Highstock) The color of the shape's stroke. */ stroke?: ColorString; /** * (Highstock) The pixel stroke width of the shape. */ strokeWidth?: number; /** * (Highstock) The type of the shape, e.g. circle or rectangle. */ type?: string; /** * (Highstock) The width of the shape. */ width?: number; } /** * (Highstock) Connector options. */ export interface AnnotationsVerticalLineTypeConnectorOptions { /** * (Highstock) The color of the shape's fill. */ fill?: ColorString; markerEnd?: string; /** * (Highstock) Defines additional snapping area around an annotation making * this annotation to focus. Defined in pixels. */ snap?: number; /** * (Highstock) The color of the shape's stroke. */ stroke?: ColorString; /** * (Highstock) The pixel stroke width of the shape. */ strokeWidth?: number; } /** * (Highstock) Label options. */ export interface AnnotationsVerticalLineTypeLabelOptions { /** * (Highstock) The alignment of the annotation's label. If right, the right * side of the label should be touching the point. */ align?: AlignValue; /** * (Highstock) Whether to allow the annotation's labels to overlap. To make * the labels less sensitive for overlapping, the can be set to 0. */ allowOverlap?: boolean; /** * (Highstock) The background color or gradient for the annotation's label. */ backgroundColor?: string; /** * (Highstock) The border color for the annotation's label. */ borderColor?: ColorString; /** * (Highstock) The border radius in pixels for the annotaiton's label. */ borderRadius?: number; /** * (Highstock) The border width in pixels for the annotation's label */ borderWidth?: number; /** * (Highstock) A class name for styling by CSS. */ className?: string; /** * (Highstock) Whether to hide the annotation's label that is outside the * plot area. */ crop?: boolean; /** * (Highstock) The label's pixel distance from the point. */ distance?: number; /** * (Highstock) A format string for the data label. */ format?: string; /** * (Highstock) Callback JavaScript function to format the annotation's * label. Note that if a `format` or `text` are defined, the format or text * take precedence and the formatter is ignored. `This` refers to a * point * object. */ formatter?: Function; offset?: number; /** * (Highstock) How to handle the annotation's label that flow outside the * plot area. The justify option aligns the label inside the plot area. */ overflow?: OptionsOverflowValue; /** * (Highstock) When either the borderWidth or the backgroundColor is set, * this is the padding within the box. */ padding?: number; point?: any; /** * (Highstock) The shadow of the box. The shadow can be an object * configuration containing `color`, `offsetX`, `offsetY`, `opacity` and * `width`. */ shadow?: (boolean|object); /** * (Highstock) The name of a symbol to use for the border around the label. * Symbols are predefined functions on the Renderer object. */ shape?: string; /** * (Highstock) Styles for the annotation's label. */ style?: (AnnotationsVerticalLineTypeLabelStyleOptions|CSSObject); /** * (Highstock) Alias for the format option. */ text?: string; /** * (Highstock) Whether to use HTML to render the annotation's label. */ useHTML?: boolean; /** * (Highstock) The vertical alignment of the annotation's label. */ verticalAlign?: VerticalAlignValue; /** * (Highstock) The x position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ x?: number; /** * (Highstock) The y position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ y?: number; } /** * (Highstock) Styles for the annotation's label. */ export interface AnnotationsVerticalLineTypeLabelStyleOptions { color?: string; fontSize?: string; fontWeight?: string; } /** * (Highstock) Line options. */ export interface AnnotationsVerticalLineTypeLineOptions { fill?: string; } /** * (Highstock) Additional options for an annotation with the type. */ export interface AnnotationsVerticalLineTypeOptions { /** * (Highstock) Connector options. */ connector?: AnnotationsVerticalLineTypeConnectorOptions; /** * (Highstock) Label options. */ label?: AnnotationsVerticalLineTypeLabelOptions; /** * (Highstock) Line options. */ line?: (object|AnnotationsVerticalLineTypeLineOptions); points?: (AnnotationsVerticalLineTypePointsOptions|Array<object>); /** * (Highstock) This number defines which xAxis the point is connected to. It * refers to either the axis id or the index of the axis in the xAxis array. */ xAxis?: number; /** * (Highstock) This number defines which yAxis the point is connected to. It * refers to either the axis id or the index of the axis in the xAxis array. */ yAxis?: number; } /** * (Highstock) Options for annotation's labels. Each label inherits options from * the labelOptions object. An option from the labelOptions can be overwritten * by config for a specific label. */ export interface AnnotationsVerticalLineTypePointsLabelOptions { /** * (Highstock) The alignment of the annotation's label. If right, the right * side of the label should be touching the point. */ align?: AlignValue; /** * (Highstock) Whether to allow the annotation's labels to overlap. To make * the labels less sensitive for overlapping, the can be set to 0. */ allowOverlap?: boolean; /** * (Highstock) The background color or gradient for the annotation's label. */ backgroundColor?: ColorString; /** * (Highstock) The border color for the annotation's label. */ borderColor?: ColorString; /** * (Highstock) The border radius in pixels for the annotaiton's label. */ borderRadius?: number; /** * (Highstock) The border width in pixels for the annotation's label */ borderWidth?: number; /** * (Highstock) A class name for styling by CSS. */ className?: string; /** * (Highstock) Whether to hide the annotation's label that is outside the * plot area. */ crop?: boolean; /** * (Highstock) The label's pixel distance from the point. */ distance?: number; /** * (Highstock) A format string for the data label. */ format?: string; /** * (Highstock) Callback JavaScript function to format the annotation's * label. Note that if a `format` or `text` are defined, the format or text * take precedence and the formatter is ignored. `This` refers to a * point * object. */ formatter?: Function; /** * (Highstock) How to handle the annotation's label that flow outside the * plot area. The justify option aligns the label inside the plot area. */ overflow?: OptionsOverflowValue; /** * (Highstock) When either the borderWidth or the backgroundColor is set, * this is the padding within the box. */ padding?: number; /** * (Highstock) The shadow of the box. The shadow can be an object * configuration containing `color`, `offsetX`, `offsetY`, `opacity` and * `width`. */ shadow?: (boolean|object); /** * (Highstock) The name of a symbol to use for the border around the label. * Symbols are predefined functions on the Renderer object. */ shape?: string; /** * (Highstock) Styles for the annotation's label. */ style?: (AnnotationsVerticalLineTypePointsLabelStyleOptions|CSSObject); /** * (Highstock) Alias for the format option. */ text?: string; /** * (Highstock) Whether to use HTML to render the annotation's label. */ useHTML?: boolean; /** * (Highstock) The vertical alignment of the annotation's label. */ verticalAlign?: VerticalAlignValue; /** * (Highstock) The x position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ x?: number; /** * (Highstock) The y position offset of the label relative to the point. * Note that if a `distance` is defined, the distance takes precedence over * `x` and `y` options. */ y?: number; } /** * (Highstock) Styles for the annotation's label. */ export interface AnnotationsVerticalLineTypePointsLabelStyleOptions { color?: string; fontSize?: string; fontWeight?: string; } export interface AnnotationsVerticalLineTypePointsOptions { controlPoint?: number; /** * (Highstock) Options for annotation's labels. Each label inherits options * from the labelOptions object. An option from the labelOptions can be * overwritten by config for a specific label. */ label?: (object|AnnotationsVerticalLineTypePointsLabelOptions); /** * (Highstock) The x position of the point. */ x?: number; /** * (Highstock) The y position of the point. */ y?: number; } export interface AxisLabelsFormatterContextObject { axis: Axis; chart: Chart; isFirst: boolean; isLast: boolean; value: number; } export interface AxisPointBreakEventObject { brk: Dictionary<number>; point: Point; preventDefault: Function; target: SVGElement; type: ("pointBreak"|"pointInBreak"); } export interface AxisSetExtremesEventObject { dataMax: number; dataMin: number; max: number; min: number; preventDefault: Function; target: SVGElement; trigger: (string|AxisExtremesTriggerValue); type: "setExtremes"; userMax: number; userMin: number; } /** * Bounding box of an element. */ export interface BBoxObject { /** * Height of the bounding box. */ height: number; /** * Width of the bounding box. */ width: number; /** * Horizontal position of the bounding box. */ x: number; /** * Vertical position of the bounding box. */ y: number; } /** * (Highcharts, Highstock, Highmaps, Gantt) Debugging options for boost. Useful * for benchmarking, and general timing. */ export interface BoostDebugOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Show the number of points * skipped through culling. * * When set to true, the number of points skipped in series processing is * outputted. Points are skipped if they are closer than 1 pixel from each * other. */ showSkipSummary?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Time the WebGL to SVG buffer * copy * * After rendering, the result is copied to an image which is injected into * the SVG. * * If this property is set to true, the time it takes for the buffer copy to * complete is outputted. */ timeBufferCopy?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Time the building of the k-d * tree. * * This outputs the time spent building the k-d tree used for markers etc. * * Note that the k-d tree is built async, and runs post-rendering. * Following, it does not affect the performance of the rendering itself. */ timeKDTree?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Time the series rendering. * * This outputs the time spent on actual rendering in the console when set * to true. */ timeRendering?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Time the series processing. * * This outputs the time spent on transforming the series data to vertex * buffers when set to true. */ timeSeriesProcessing?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Time the the WebGL setup. * * This outputs the time spent on setting up the WebGL context, creating * shaders, and textures. */ timeSetup?: boolean; } export interface BoostOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) If set to true, the whole chart * will be boosted if one of the series crosses its threshold, and all the * series can be boosted. */ allowForce?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Debugging options for boost. * Useful for benchmarking, and general timing. */ debug?: BoostDebugOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) Enable or disable boost on a * chart. */ enabled?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Set the series threshold for * when the boost should kick in globally. * * Setting to e.g. 20 will cause the whole chart to enter boost mode if * there are 20 or more series active. When the chart is in boost mode, * every series in it will be rendered to a common canvas. This offers a * significant speed improvment in charts with a very high amount of series. */ seriesThreshold?: (number|null); /** * (Highcharts, Highstock, Highmaps, Gantt) Enable or disable GPU * translations. GPU translations are faster than doing the translation in * JavaScript. * * This option may cause rendering issues with certain datasets. Namely, if * your dataset has large numbers with small increments (such as * timestamps), it won't work correctly. This is due to floating point * precission. */ useGPUTranslations?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Enable or disable pre-allocation * of vertex buffers. * * Enabling this will make it so that the binary data arrays required for * storing the series data will be allocated prior to transforming the data * to a WebGL-compatible format. * * This saves a copy operation on the order of O(n) and so is significantly * more performant. However, this is currently an experimental option, and * may cause visual artifacts with some datasets. * * As such, care should be taken when using this setting to make sure that * it doesn't cause any rendering glitches with the given use-case. */ usePreallocated?: boolean; } export interface BubbleLegendFormatterContextObject { /** * The center y position of the range. */ center: number; /** * The radius of the bubble range. */ radius: number; /** * The bubble value. */ value: number; } export interface BubbleLegendFormatterContextObject { center: number; radius: number; value: number; } /** * (Highcharts) The back side of the frame around a 3D chart. */ export interface Chart3dFrameBackOptions { /** * (Highcharts) The color of the panel. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The thickness of the panel. */ size?: number; /** * (Highcharts) Whether to display the frame. Possible values are `true`, * `false`, `"auto"` to display only the frames behind the data, and * `"default"` to display faces behind the data based on the axis layout, * ignoring the point of view. */ visible?: ("auto"|"default"|boolean); } /** * (Highcharts) The bottom of the frame around a 3D chart. */ export interface Chart3dFrameBottomOptions { /** * (Highcharts) The color of the panel. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The thickness of the panel. */ size?: number; /** * (Highcharts) Whether to display the frame. Possible values are `true`, * `false`, `"auto"` to display only the frames behind the data, and * `"default"` to display faces behind the data based on the axis layout, * ignoring the point of view. */ visible?: ("auto"|"default"|boolean); } /** * (Highcharts) The front of the frame around a 3D chart. */ export interface Chart3dFrameFrontOptions { /** * (Highcharts) The color of the panel. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The thickness of the panel. */ size?: number; /** * (Highcharts) Whether to display the frame. Possible values are `true`, * `false`, `"auto"` to display only the frames behind the data, and * `"default"` to display faces behind the data based on the axis layout, * ignoring the point of view. */ visible?: ("auto"|"default"|boolean); } /** * (Highcharts) The left side of the frame around a 3D chart. */ export interface Chart3dFrameLeftOptions { /** * (Highcharts) The color of the panel. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The thickness of the panel. */ size?: number; /** * (Highcharts) Whether to display the frame. Possible values are `true`, * `false`, `"auto"` to display only the frames behind the data, and * `"default"` to display faces behind the data based on the axis layout, * ignoring the point of view. */ visible?: ("auto"|"default"|boolean); } /** * (Highcharts) Provides the option to draw a frame around the charts by * defining a bottom, front and back panel. */ export interface Chart3dFrameOptions { /** * (Highcharts) The back side of the frame around a 3D chart. */ back?: Chart3dFrameBackOptions; /** * (Highcharts) The bottom of the frame around a 3D chart. */ bottom?: Chart3dFrameBottomOptions; /** * (Highcharts) The front of the frame around a 3D chart. */ front?: Chart3dFrameFrontOptions; /** * (Highcharts) The left side of the frame around a 3D chart. */ left?: Chart3dFrameLeftOptions; /** * (Highcharts) The right of the frame around a 3D chart. */ right?: Chart3dFrameRightOptions; /** * (Highcharts) Note: As of v5.0.12, `frame.left` or `frame.right` should be * used instead. * * The side for the frame around a 3D chart. */ side?: Chart3dFrameSideOptions; /** * (Highcharts) General pixel thickness for the frame faces. */ size?: number; /** * (Highcharts) The top of the frame around a 3D chart. */ top?: Chart3dFrameTopOptions; /** * (Highcharts) Whether the frames are visible. */ visible?: string; } /** * (Highcharts) The right of the frame around a 3D chart. */ export interface Chart3dFrameRightOptions { /** * (Highcharts) The color of the panel. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The thickness of the panel. */ size?: number; /** * (Highcharts) Whether to display the frame. Possible values are `true`, * `false`, `"auto"` to display only the frames behind the data, and * `"default"` to display faces behind the data based on the axis layout, * ignoring the point of view. */ visible?: ("auto"|"default"|boolean); } /** * (Highcharts) Note: As of v5.0.12, `frame.left` or `frame.right` should be * used instead. * * The side for the frame around a 3D chart. */ export interface Chart3dFrameSideOptions { /** * (Highcharts) The color of the panel. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The thickness of the panel. */ size?: number; } /** * (Highcharts) The top of the frame around a 3D chart. */ export interface Chart3dFrameTopOptions { /** * (Highcharts) The color of the panel. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The thickness of the panel. */ size?: number; /** * (Highcharts) Whether to display the frame. Possible values are `true`, * `false`, `"auto"` to display only the frames behind the data, and * `"default"` to display faces behind the data based on the axis layout, * ignoring the point of view. */ visible?: ("auto"|"default"|boolean); } /** * (Highcharts) Options to render charts in 3 dimensions. This feature requires * `highcharts-3d.js`, found in the download package or online at * code.highcharts.com/highcharts-3d.js. */ export interface Chart3dOptions { /** * (Highcharts) One of the two rotation angles for the chart. */ alpha?: number; /** * (Highcharts) Set it to `"auto"` to automatically move the labels to the * best edge. */ axisLabelPosition?: ("auto"|null); /** * (Highcharts) One of the two rotation angles for the chart. */ beta?: number; /** * (Highcharts) The total depth of the chart. */ depth?: number; /** * (Highcharts) Wether to render the chart using the 3D functionality. */ enabled?: boolean; /** * (Highcharts) Whether the 3d box should automatically adjust to the chart * plot area. */ fitToPlot?: boolean; /** * (Highcharts) Provides the option to draw a frame around the charts by * defining a bottom, front and back panel. */ frame?: Chart3dFrameOptions; /** * (Highcharts) Defines the distance the viewer is standing in front of the * chart, this setting is important to calculate the perspective effect in * column and scatter charts. It is not used for 3D pie charts. */ viewDistance?: number; } /** * Conaints common event information. Through the `options` property you can * access the series options that were passed to the `addSeries` method. */ export interface ChartAddSeriesEventObject { /** * The series options that were passed to the `addSeries` method. */ options: SeriesOptionsType; /** * Prevents the default behaviour of the event. */ preventDefault: Function; /** * The event target. */ target: Chart; /** * The event type. */ type: "drilldown"; } /** * Contains an axes of the clicked spot. */ export interface ChartClickEventAxisObject { /** * Axis at the clicked spot. */ axis: Axis; /** * Axis value at the clicked spot. */ value: number; } /** * Contains information about the clicked spot on the chart. Remember the unit * of a datetime axis is milliseconds since 1970-01-01 00:00:00. */ export interface ChartClickEventObject extends PointerEventObject { /** * Information about the x-axis on the clicked spot. */ xAxis: Array<ChartClickEventAxisObject>; /** * Information about the y-axis on the clicked spot. */ yAxis: Array<ChartClickEventAxisObject>; /** * Information about the z-axis on the clicked spot. */ zAxis?: Array<ChartClickEventAxisObject>; } /** * (Highcharts, Highstock, Highmaps, Gantt) Event listeners for the chart. */ export interface ChartEventsOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Fires when a series is added to * the chart after load time, using the `addSeries` method. One parameter, * `event`, is passed to the function, containing common event information. * Through `event.options` you can access the series options that were * passed to the `addSeries` method. Returning false prevents the series * from being added. */ addSeries?: ChartAddSeriesCallbackFunction; /** * (Highcharts, Highstock, Highmaps, Gantt) Fires after a chart is printed * through the context menu item or the `Chart.print` method. Requires the * exporting module. */ afterPrint?: ExportingAfterPrintCallbackFunction; /** * (Highcharts, Highstock, Highmaps, Gantt) Fires before a chart is printed * through the context menu item or the `Chart.print` method. Requires the * exporting module. */ beforePrint?: ExportingBeforePrintCallbackFunction; /** * (Highcharts, Highstock, Highmaps, Gantt) Fires when clicking on the plot * background. One parameter, `event`, is passed to the function, containing * common event information. * * Information on the clicked spot can be found through `event.xAxis` and * `event.yAxis`, which are arrays containing the axes of each dimension and * each axis' value at the clicked spot. The primary axes are * `event.xAxis[0]` and `event.yAxis[0]`. Remember the unit of a datetime * axis is milliseconds since 1970-01-01 00:00:00. * * (see online documentation for example) */ click?: ChartClickCallbackFunction; /** * (Highcharts, Highmaps) Fires when a drilldown point is clicked, before * the new series is added. This event is also utilized for async drilldown, * where the seriesOptions are not added by option, but rather loaded async. * Note that when clicking a category label to trigger multiple series * drilldown, one `drilldown` event is triggered per point in the category. * * Event arguments: * * - `category`: If a category label was clicked, which index.</dd> * * - `originalEvent`: The original browser event (usually click) that * triggered the drilldown. * * - `point`: The originating point. * * - `points`: If a category label was clicked, this array holds all points * corresponing to the category.</dd> * * - `seriesOptions`: Options for the new series. */ drilldown?: DrilldownCallbackFunction; /** * (Highcharts, Highmaps) Fires when drilling up from a drilldown series. */ drillup?: DrillupCallbackFunction; /** * (Highcharts, Highmaps) In a chart with multiple drilldown series, this * event fires after all the series have been drilled up. */ drillupall?: DrillupAllCallbackFunction; /** * (Highcharts, Highstock, Highmaps, Gantt) Fires when the chart is finished * loading. Since v4.2.2, it also waits for images to be loaded, for example * from point markers. One parameter, `event`, is passed to the function, * containing common event information. * * There is also a second parameter to the chart constructor where a * callback function can be passed to be executed on chart.load. */ load?: ChartLoadCallbackFunction; /** * (Highcharts, Highstock, Highmaps, Gantt) Fires when the chart is redrawn, * either after a call to `chart.redraw()` or after an axis, series or point * is modified with the `redraw` option set to `true`. One parameter, * `event`, is passed to the function, containing common event information. */ redraw?: ChartRedrawCallbackFunction; /** * (Highcharts, Highstock, Highmaps, Gantt) Fires after initial load of the * chart (directly after the `load` event), and after each redraw (directly * after the `redraw` event). */ render?: ChartRenderCallbackFunction; /** * (Highcharts, Highstock, Highmaps, Gantt) Fires when an area of the chart * has been selected. Selection is enabled by setting the chart's zoomType. * One parameter, `event`, is passed to the function, containing common * event information. The default action for the selection event is to zoom * the chart to the selected area. It can be prevented by calling * `event.preventDefault()` or return false. * * Information on the selected area can be found through `event.xAxis` and * `event.yAxis`, which are arrays containing the axes of each dimension and * each axis' min and max values. The primary axes are `event.xAxis[0]` and * `event.yAxis[0]`. Remember the unit of a datetime axis is milliseconds * since 1970-01-01 00:00:00. * * (see online documentation for example) */ selection?: ChartSelectionCallbackFunction; } /** * (Highcharts, Highstock, Highmaps, Gantt) General options for the chart. */ export interface ChartOptions { /** * (Highcharts, Highstock, Gantt) When using multiple axis, the ticks of two * or more opposite axes will automatically be aligned by adding ticks to * the axis or axes with the least ticks, as if `tickAmount` were specified. * * This can be prevented by setting `alignTicks` to false. If the grid lines * look messy, it's a good idea to hide them for the secondary axis by * setting `gridLineWidth` to 0. * * If `startOnTick` or `endOnTick` in an Axis options are set to false, then * the `alignTicks ` will be disabled for the Axis. * * Disabled for logarithmic axes. */ alignTicks?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Set the overall animation for * all chart updating. Animation can be disabled throughout the chart by * setting it to false here. It can be overridden for each individual API * method as a function parameter. The only animation not affected by this * option is the initial series animation, see plotOptions.series.animation. * * The animation can either be set as a boolean or a configuration object. * If `true`, it will use the 'swing' jQuery easing and a duration of 500 * ms. If used as a configuration object, the following properties are * supported: * * (see online documentation for example) */ animation?: (boolean|AnimationOptionsObject); /** * (Highcharts, Highstock, Highmaps, Gantt) The background color or gradient * for the outer chart area. */ backgroundColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Highmaps, Gantt) The color of the outer chart * border. */ borderColor?: ColorString; /** * (Highcharts, Highstock, Highmaps, Gantt) The corner radius of the outer * chart border. */ borderRadius?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The pixel width of the outer * chart border. */ borderWidth?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) A CSS class name to apply to the * charts container `div`, allowing unique CSS styling for each chart. */ className?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) In styled mode, this sets how * many colors the class names should rotate between. With ten colors, * series (or points) are given class names like `highcharts-color-0`, * `highcharts-color-0` [...] `highcharts-color-9`. The equivalent in * non-styled mode is to set colors using the colors setting. */ colorCount?: number; /** * (Highcharts) Alias of `type`. */ defaultSeriesType?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to display errors on the * chart. When `false`, the errors will be shown only in the console. * * Requires `debugger.js` module. */ displayErrors?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Event listeners for the chart. */ events?: ChartEventsOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) An explicit height for the * chart. If a _number_, the height is given in pixels. If given a * _percentage string_ (for example `'56%'`), the height is given as the * percentage of the actual chart width. This allows for preserving the * aspect ratio across responsive sizes. * * By default (when `null`) the height is calculated from the offset height * of the containing element, or 400 pixels if the containing element's * height is 0. */ height?: (number|string|null); /** * (Highcharts, Highstock, Gantt) If true, the axes will scale to the * remaining visible series once one series is hidden. If false, hiding and * showing a series will not affect the axes or the other series. For * stacks, once one series within the stack is hidden, the rest of the stack * will close in around it even if the axis is not affected. */ ignoreHiddenSeries?: boolean; /** * (Highcharts, Highstock, Gantt) Whether to invert the axes so that the x * axis is vertical and y axis is horizontal. When `true`, the x axis is * reversed by default. */ inverted?: boolean; /** * (Highmaps) Default `mapData` for all series. If set to a string, it * functions as an index into the `Highcharts.maps` array. Otherwise it is * interpreted as map data. */ map?: (string|Array<any>); /** * (Highmaps) Set lat/lon transformation definitions for the chart. If not * defined, these are extracted from the map data. */ mapTransforms?: any; /** * (Highcharts, Highstock, Highmaps, Gantt) The margin between the outer * edge of the chart and the plot area. The numbers in the array designate * top, right, bottom and left respectively. Use the options `marginTop`, * `marginRight`, `marginBottom` and `marginLeft` for shorthand setting of * one option. * * By default there is no margin. The actual space is dynamically calculated * from the offset of axis labels, axis title, title, subtitle and legend in * addition to the `spacingTop`, `spacingRight`, `spacingBottom` and * `spacingLeft` options. */ margin?: (number|Array<number>); /** * (Highcharts, Highstock, Highmaps, Gantt) The margin between the bottom * outer edge of the chart and the plot area. Use this to set a fixed pixel * value for the margin as opposed to the default dynamic margin. See also * `spacingBottom`. */ marginBottom?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The margin between the left * outer edge of the chart and the plot area. Use this to set a fixed pixel * value for the margin as opposed to the default dynamic margin. See also * `spacingLeft`. */ marginLeft?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The margin between the right * outer edge of the chart and the plot area. Use this to set a fixed pixel * value for the margin as opposed to the default dynamic margin. See also * `spacingRight`. */ marginRight?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The margin between the top outer * edge of the chart and the plot area. Use this to set a fixed pixel value * for the margin as opposed to the default dynamic margin. See also * `spacingTop`. */ marginTop?: number; /** * (Highcharts) Options to render charts in 3 dimensions. This feature * requires `highcharts-3d.js`, found in the download package or online at * code.highcharts.com/highcharts-3d.js. */ options3d?: Chart3dOptions; /** * (Highcharts, Gantt) Allows setting a key to switch between zooming and * panning. Can be one of `alt`, `ctrl`, `meta` (the command key on Mac and * Windows key on Windows) or `shift`. The keys are mapped directly to the * key properties of the click event argument (`event.altKey`, * `event.ctrlKey`, `event.metaKey` and `event.shiftKey`). */ panKey?: OptionsPanKeyValue; /** * (Highcharts, Highstock, Gantt) Allow panning in a chart. Best used with * panKey to combine zooming and panning. * * On touch devices, when the tooltip.followTouchMove option is `true` * (default), panning requires two fingers. To allow panning with one * finger, set `followTouchMove` to `false`. */ panning?: boolean; /** * (Highcharts) Common options for all yAxes rendered in a parallel * coordinates plot. This feature requires * `modules/parallel-coordinates.js`. * * The default options are: (see online documentation for example) */ parallelAxes?: ChartParallelAxesOptions; /** * (Highcharts) Flag to render charts as a parallel coordinates plot. In a * parallel coordinates plot (||-coords) by default all required yAxes are * generated and the legend is disabled. This feature requires * `modules/parallel-coordinates.js`. */ parallelCoordinates?: boolean; /** * (Highcharts, Highstock, Gantt) Equivalent to zoomType, but for multitouch * gestures only. By default, the `pinchType` is the same as the `zoomType` * setting. However, pinching can be enabled separately in some cases, for * example in stock charts where a mouse drag pans the chart, while pinching * is enabled. When tooltip.followTouchMove is true, pinchType only applies * to two-finger touches. */ pinchType?: OptionsPinchTypeValue; /** * (Highcharts, Highstock, Highmaps, Gantt) The background color or gradient * for the plot area. */ plotBackgroundColor?: ColorString; /** * (Highcharts, Highstock, Highmaps, Gantt) The URL for an image to use as * the plot background. To set an image as the background for the entire * chart, set a CSS background image to the container element. Note that for * the image to be applied to exported charts, its URL needs to be * accessible by the export server. */ plotBackgroundImage?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) The color of the inner chart or * plot area border. */ plotBorderColor?: ColorString; /** * (Highcharts, Highstock, Highmaps, Gantt) The pixel width of the plot area * border. */ plotBorderWidth?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to apply a drop shadow * to the plot area. Requires that plotBackgroundColor be set. The shadow * can be an object configuration containing `color`, `offsetX`, `offsetY`, * `opacity` and `width`. */ plotShadow?: (boolean|CSSObject); /** * (Highcharts) When true, cartesian charts like line, spline, area and * column are transformed into the polar coordinate system. This produces * _polar charts_, also known as _radar charts_. Requires * `highcharts-more.js`. */ polar?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to reflow the chart to * fit the width of the container div on resizing the window. */ reflow?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) The HTML element where the chart * will be rendered. If it is a string, the element by that id is used. The * HTML element can also be passed by direct reference, or as the first * argument of the chart constructor, in which case the option is not * needed. */ renderTo?: (string|HTMLDOMElement); /** * (Highcharts, Highstock, Highmaps, Gantt) The button that appears after a * selection zoom, allowing the user to reset zoom. */ resetZoomButton?: ChartResetZoomButtonOptions; /** * (Highcharts, Gantt) Options for a scrollable plot area. This feature * provides a minimum width for the plot area of the chart. If the width * gets smaller than this, typically on mobile devices, a native browser * scrollbar is presented below the chart. This scrollbar provides smooth * scrolling for the contents of the plot area, whereas the title, legend * and axes are fixed. */ scrollablePlotArea?: ChartScrollablePlotAreaOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) The background color of the * marker square when selecting (zooming in on) an area of the chart. */ selectionMarkerFill?: ColorString; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to apply a drop shadow * to the outer chart area. Requires that backgroundColor be set. The shadow * can be an object configuration containing `color`, `offsetX`, `offsetY`, * `opacity` and `width`. */ shadow?: (boolean|CSSObject); /** * (Highcharts, Gantt) Whether to show the axes initially. This only applies * to empty charts where series are added dynamically, as axes are * automatically added to cartesian series. */ showAxes?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) The distance between the outer * edge of the chart and the content, like title or legend, or axis title * and labels if present. The numbers in the array designate top, right, * bottom and left respectively. Use the options spacingTop, spacingRight, * spacingBottom and spacingLeft options for shorthand setting of one * option. */ spacing?: Array<number>; /** * (Highcharts, Highstock, Highmaps, Gantt) The space between the bottom * edge of the chart and the content (plot area, axis title and labels, * title, subtitle or legend in top position). */ spacingBottom?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The space between the left edge * of the chart and the content (plot area, axis title and labels, title, * subtitle or legend in top position). */ spacingLeft?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The space between the right edge * of the chart and the content (plot area, axis title and labels, title, * subtitle or legend in top position). */ spacingRight?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The space between the top edge * of the chart and the content (plot area, axis title and labels, title, * subtitle or legend in top position). */ spacingTop?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) Additional CSS styles to apply * inline to the container `div`. Note that since the default font styles * are applied in the renderer, it is ignorant of the individual chart * options and must be set globally. */ style?: CSSObject; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to apply styled mode. * When in styled mode, no presentational attributes or CSS are applied to * the chart SVG. Instead, CSS rules are required to style the chart. The * default style sheet is available from * `https://code.highcharts.com/css/highcharts.css`. */ styledMode?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) The default series type for the * chart. Can be any of the chart types listed under plotOptions and series * or can be a series provided by an additional module. * * In TypeScript this option has no effect in sense of typing and instead * the `type` option must always be set in the series. */ type?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) An explicit width for the chart. * By default (when `null`) the width is calculated from the offset width of * the containing element. */ width?: (number|null); /** * (Highcharts, Highstock, Highmaps, Gantt) Set a key to hold when dragging * to zoom the chart. Requires the draggable-points module. This is useful * to avoid zooming while moving points. Should be set different than * chart.panKey. */ zoomKey?: OptionsZoomKeyValue; /** * (Highcharts, Highstock, Gantt) Decides in what dimensions the user can * zoom by dragging the mouse. Can be one of `x`, `y` or `xy`. */ zoomType?: OptionsZoomTypeValue; } /** * (Highcharts) Accessibility options for an axis. Requires the accessibility * module. */ export interface ChartParallelAxesAccessibilityOptions { /** * (Highcharts) Description for an axis to expose to screen reader users. */ description?: string; /** * (Highcharts) Enable axis accessibility features, including axis * information in the screen reader information region. If this is disabled * on the xAxis, the x values are not exposed to screen readers for the * individual data points by default. */ enabled?: boolean; /** * (Highcharts) Range description for an axis. Overrides the default range * description. Set to empty to disable range description for this axis. */ rangeDescription?: string; } /** * (Highstock) A label on the axis next to the crosshair. * * In styled mode, the label is styled with the `.highcharts-crosshair-label` * class. */ export interface ChartParallelAxesCrosshairLabelOptions { /** * (Highstock) Alignment of the label compared to the axis. Defaults to * `"left"` for right-side axes, `"right"` for left-side axes and `"center"` * for horizontal axes. */ align?: AlignValue; /** * (Highstock) The background color for the label. Defaults to the related * series color, or `#666666` if that is not available. */ backgroundColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The border color for the crosshair label */ borderColor?: ColorString; /** * (Highstock) The border corner radius of the crosshair label. */ borderRadius?: number; /** * (Highstock) The border width for the crosshair label. */ borderWidth?: number; /** * (Highstock) A format string for the crosshair label. Defaults to * `{value}` for numeric axes and `{value:%b %d, %Y}` for datetime axes. */ format?: string; /** * (Highstock) Formatter function for the label text. */ formatter?: XAxisCrosshairLabelFormatterCallbackFunction; /** * (Highstock) Padding inside the crosshair label. */ padding?: number; /** * (Highstock) The shape to use for the label box. */ shape?: string; /** * (Highstock) Text styles for the crosshair label. */ style?: CSSObject; } /** * (Highcharts) Configure a crosshair that follows either the mouse pointer or * the hovered point. * * In styled mode, the crosshairs are styled in the `.highcharts-crosshair`, * `.highcharts-crosshair-thin` or `.highcharts-xaxis-category` classes. */ export interface ChartParallelAxesCrosshairOptions { /** * (Highcharts) A class name for the crosshair, especially as a hook for * styling. */ className?: string; /** * (Highcharts) The color of the crosshair. Defaults to `#cccccc` for * numeric and datetime axes, and `rgba(204,214,235,0.25)` for category * axes, where the crosshair by default highlights the whole category. */ color?: ColorString; /** * (Highcharts) The dash style for the crosshair. See series.dashStyle for * possible values. */ dashStyle?: DashStyleValue; /** * (Highstock) A label on the axis next to the crosshair. * * In styled mode, the label is styled with the * `.highcharts-crosshair-label` class. */ label?: ChartParallelAxesCrosshairLabelOptions; /** * (Highcharts) Whether the crosshair should snap to the point or follow the * pointer independent of points. */ snap?: boolean; /** * (Highcharts) The pixel width of the crosshair. Defaults to 1 for numeric * or datetime axes, and for one category width for category axes. */ width?: number; /** * (Highcharts) The Z index of the crosshair. Higher Z indices allow drawing * the crosshair on top of the series or behind the grid lines. */ zIndex?: number; } export interface ChartParallelAxesDateTimeLabelFormatsDayOptions { main?: string; } export interface ChartParallelAxesDateTimeLabelFormatsHourOptions { main?: string; range?: boolean; } export interface ChartParallelAxesDateTimeLabelFormatsMillisecondOptions { main?: string; range?: boolean; } export interface ChartParallelAxesDateTimeLabelFormatsMinuteOptions { main?: string; range?: boolean; } export interface ChartParallelAxesDateTimeLabelFormatsMonthOptions { main?: string; } /** * (Highcharts, Highstock, Gantt) For a datetime axis, the scale will * automatically adjust to the appropriate unit. This member gives the default * string representations used for each unit. For intermediate values, different * units may be used, for example the `day` unit can be used on midnight and * `hour` unit be used for intermediate values on the same axis. For an overview * of the replacement codes, see dateFormat. Defaults to: * * (see online documentation for example) */ export interface ChartParallelAxesDateTimeLabelFormatsOptions { day?: ChartParallelAxesDateTimeLabelFormatsDayOptions; hour?: ChartParallelAxesDateTimeLabelFormatsHourOptions; millisecond?: ChartParallelAxesDateTimeLabelFormatsMillisecondOptions; minute?: ChartParallelAxesDateTimeLabelFormatsMinuteOptions; month?: ChartParallelAxesDateTimeLabelFormatsMonthOptions; second?: ChartParallelAxesDateTimeLabelFormatsSecondOptions; week?: ChartParallelAxesDateTimeLabelFormatsWeekOptions; year?: ChartParallelAxesDateTimeLabelFormatsYearOptions; } export interface ChartParallelAxesDateTimeLabelFormatsSecondOptions { main?: string; range?: boolean; } export interface ChartParallelAxesDateTimeLabelFormatsWeekOptions { main?: string; } export interface ChartParallelAxesDateTimeLabelFormatsYearOptions { main?: string; } /** * (Highcharts) Event handlers for the axis. */ export interface ChartParallelAxesEventsOptions { /** * (Highcharts, Gantt) An event fired after the breaks have rendered. */ afterBreaks?: AxisEventCallbackFunction; /** * (Highcharts) As opposed to the `setExtremes` event, this event fires * after the final min and max values are computed and corrected for * `minRange`. * * Fires when the minimum and maximum is set for the axis, either by calling * the `.setExtremes()` method or by selecting an area in the chart. One * parameter, `event`, is passed to the function, containing common event * information. * * The new user set minimum and maximum values can be found by `event.min` * and `event.max`. These reflect the axis minimum and maximum in axis * values. The actual data extremes are found in `event.dataMin` and * `event.dataMax`. */ afterSetExtremes?: AxisSetExtremesEventCallbackFunction; /** * (Highcharts, Gantt) An event fired when a break from this axis occurs on * a point. */ pointBreak?: AxisPointBreakEventCallbackFunction; /** * (Highcharts, Highstock, Gantt) An event fired when a point falls inside a * break from this axis. */ pointInBreak?: AxisPointBreakEventCallbackFunction; /** * (Highcharts) Fires when the minimum and maximum is set for the axis, * either by calling the `.setExtremes()` method or by selecting an area in * the chart. One parameter, `event`, is passed to the function, containing * common event information. * * The new user set minimum and maximum values can be found by `event.min` * and `event.max`. These reflect the axis minimum and maximum in data * values. When an axis is zoomed all the way out from the "Reset zoom" * button, `event.min` and `event.max` are null, and the new extremes are * set based on `this.dataMin` and `this.dataMax`. */ setExtremes?: AxisSetExtremesEventCallbackFunction; } /** * (Gantt) Set grid options for the axis labels. Requires Highcharts Gantt. */ export interface ChartParallelAxesGridOptions { /** * (Gantt) Set border color for the label grid lines. */ borderColor?: ColorString; /** * (Gantt) Set border width of the label grid lines. */ borderWidth?: number; /** * (Gantt) Set cell height for grid axis labels. By default this is * calculated from font size. */ cellHeight?: number; /** * (Gantt) Set specific options for each column (or row for horizontal axes) * in the grid. Each extra column/row is its own axis, and the axis options * can be set here. */ columns?: Array<XAxisOptions>; /** * (Gantt) Enable grid on the axis labels. Defaults to true for Gantt * charts. */ enabled?: boolean; } /** * (Gantt) Set options on specific levels in a tree grid axis. Takes precedence * over labels options. */ export interface ChartParallelAxesLabelsLevelsOptions { /** * (Gantt) Specify the level which the options within this object applies * to. */ level?: number; style?: CSSObject; } /** * (Highcharts) The axis labels show the number or category for each tick. */ export interface ChartParallelAxesLabelsOptions { /** * (Highcharts) What part of the string the given position is anchored to. * Can be one of `"left"`, `"center"` or `"right"`. The exact position also * depends on the `labels.x` setting. * * Angular gauges and solid gauges defaults to `"center"`. */ align?: string; /** * (Highcharts, Highstock, Gantt) For horizontal axes, the allowed degrees * of label rotation to prevent overlapping labels. If there is enough * space, labels are not rotated. As the chart gets narrower, it will start * rotating the labels -45 degrees, then remove every second label and try * again with rotations 0 and -45 etc. Set it to `false` to disable * rotation, which will cause the labels to word-wrap if possible. */ autoRotation?: (false|Array<number>); /** * (Highcharts, Gantt) When each category width is more than this many * pixels, we don't apply auto rotation. Instead, we lay out the axis label * with word wrap. A lower limit makes sense when the label contains * multiple short words that don't extend the available horizontal space for * each label. */ autoRotationLimit?: number; /** * (Highcharts) Angular gauges and solid gauges only. The label's pixel * distance from the perimeter of the plot area. */ distance?: number; /** * (Highcharts) Enable or disable the axis labels. */ enabled?: boolean; /** * (Highcharts) A format string for the axis label. */ format?: string; /** * (Highcharts) Callback JavaScript function to format the label. The value * is given by `this.value`. Additional properties for `this` are `axis`, * `chart`, `isFirst` and `isLast`. The value of the default label formatter * can be retrieved by calling `this.axis.defaultLabelFormatter.call(this)` * within the function. * * Defaults to: * * (see online documentation for example) */ formatter?: FormatterCallbackFunction<AxisLabelsFormatterContextObject>; /** * (Gantt) The number of pixels to indent the labels per level in a treegrid * axis. */ indentation?: number; /** * (Gantt) Set options on specific levels in a tree grid axis. Takes * precedence over labels options. */ levels?: Array<ChartParallelAxesLabelsLevelsOptions>; /** * (Highcharts) Horizontal axis only. When `staggerLines` is not set, * `maxStaggerLines` defines how many lines the axis is allowed to add to * automatically avoid overlapping X labels. Set to `1` to disable overlap * detection. */ maxStaggerLines?: number; /** * (Highcharts) How to handle overflowing labels on horizontal axis. If set * to `"allow"`, it will not be aligned at all. By default it `"justify"` * labels inside the chart area. If there is room to move it, it will be * aligned to the edge, else it will be removed. */ overflow?: OptionsOverflowValue; /** * (Highcharts, Gantt) The pixel padding for axis labels, to ensure white * space between them. */ padding?: number; /** * (Highcharts) Defines how the labels are be repositioned according to the * 3D chart orientation. * * - `'offset'`: Maintain a fixed horizontal/vertical distance from the tick * marks, despite the chart orientation. This is the backwards compatible * behavior, and causes skewing of X and Z axes. * * - `'chart'`: Preserve 3D position relative to the chart. This looks nice, * but hard to read if the text isn't forward-facing. * * - `'flap'`: Rotated text along the axis to compensate for the chart * orientation. This tries to maintain text as legible as possible on all * orientations. * * - `'ortho'`: Rotated text along the axis direction so that the labels are * orthogonal to the axis. This is very similar to `'flap'`, but prevents * skewing the labels (X and Y scaling are still present). */ position3d?: OptionsPosition3dValue; /** * (Highcharts, Gantt) Whether to reserve space for the labels. By default, * space is reserved for the labels in these cases: * * * On all horizontal axes. * * * On vertical axes if `label.align` is `right` on a left-side axis or * `left` on a right-side axis. * * * On vertical axes if `label.align` is `center`. * * This can be turned off when for example the labels are rendered inside * the plot area instead of outside. */ reserveSpace?: boolean; /** * (Highcharts) Rotation of the labels in degrees. */ rotation?: number; /** * (Highcharts) If enabled, the axis labels will skewed to follow the * perspective. * * This will fix overlapping labels and titles, but texts become less * legible due to the distortion. * * The final appearance depends heavily on `labels.position3d`. */ skew3d?: boolean; /** * (Highcharts) Horizontal axes only. The number of lines to spread the * labels over to make room or tighter labels. */ staggerLines?: number; /** * (Highcharts) To show only every _n_'th label on the axis, set the step to * _n_. Setting the step to 2 shows every other label. * * By default, the step is calculated automatically to avoid overlap. To * prevent this, set it to 1\. This usually only happens on a category axis, * and is often a sign that you have chosen the wrong axis type. * * Read more at Axis docs => What axis should I use? */ step?: number; /** * (Highcharts) CSS styles for the label. Use `whiteSpace: 'nowrap'` to * prevent wrapping of category labels. Use `textOverflow: 'none'` to * prevent ellipsis (dots). * * In styled mode, the labels are styled with the `.highcharts-axis-labels` * class. */ style?: CSSObject; /** * (Gantt) The symbol for the collapse and expand icon in a treegrid. */ symbol?: ChartParallelAxesLabelsSymbolOptions; /** * (Highcharts) Whether to use HTML to render the labels. */ useHTML?: boolean; /** * (Highcharts) The x position offset of the label relative to the tick * position on the axis. Defaults to -15 for left axis, 15 for right axis. */ x?: number; /** * (Highcharts) The y position offset of the label relative to the tick * position on the axis. */ y?: number; /** * (Highcharts) The Z index for the axis labels. */ zIndex?: number; } /** * (Gantt) The symbol for the collapse and expand icon in a treegrid. */ export interface ChartParallelAxesLabelsSymbolOptions { height?: number; padding?: number; /** * (Gantt) The symbol type. Points to a definition function in the * `Highcharts.Renderer.symbols` collection. */ type?: SymbolKeyValue; width?: number; x?: number; y?: number; } /** * (Highcharts) Common options for all yAxes rendered in a parallel coordinates * plot. This feature requires `modules/parallel-coordinates.js`. * * The default options are: (see online documentation for example) */ export interface ChartParallelAxesOptions { /** * (Highcharts) Accessibility options for an axis. Requires the * accessibility module. */ accessibility?: (object|ChartParallelAxesAccessibilityOptions); /** * (Highcharts, Highstock, Gantt) When using multiple axis, the ticks of two * or more opposite axes will automatically be aligned by adding ticks to * the axis or axes with the least ticks, as if `tickAmount` were specified. * * This can be prevented by setting `alignTicks` to false. If the grid lines * look messy, it's a good idea to hide them for the secondary axis by * setting `gridLineWidth` to 0. * * If `startOnTick` or `endOnTick` in an Axis options are set to false, then * the `alignTicks ` will be disabled for the Axis. * * Disabled for logarithmic axes. */ alignTicks?: boolean; /** * (Highcharts) Whether to allow decimals in this axis' ticks. When counting * integers, like persons or hits on a web page, decimals should be avoided * in the labels. */ allowDecimals?: boolean; /** * (Highcharts, Gantt) If categories are present for the xAxis, names are * used instead of numbers for that axis. Since Highcharts 3.0, categories * can also be extracted by giving each point a name and setting axis type * to `category`. However, if you have multiple series, best practice * remains defining the `categories` array. * * Example: * * (see online documentation for example) */ categories?: Array<string>; /** * (Highcharts, Highstock, Gantt) The highest allowed value for * automatically computed axis extremes. */ ceiling?: number; /** * (Highcharts) A class name that opens for styling the axis by CSS, * especially in Highcharts styled mode. The class name is applied to group * elements for the grid, axis elements and labels. */ className?: string; /** * (Highcharts) Configure a crosshair that follows either the mouse pointer * or the hovered point. * * In styled mode, the crosshairs are styled in the `.highcharts-crosshair`, * `.highcharts-crosshair-thin` or `.highcharts-xaxis-category` classes. */ crosshair?: (boolean|ChartParallelAxesCrosshairOptions); /** * (Highcharts, Highstock, Gantt) For a datetime axis, the scale will * automatically adjust to the appropriate unit. This member gives the * default string representations used for each unit. For intermediate * values, different units may be used, for example the `day` unit can be * used on midnight and `hour` unit be used for intermediate values on the * same axis. For an overview of the replacement codes, see dateFormat. * Defaults to: * * (see online documentation for example) */ dateTimeLabelFormats?: ChartParallelAxesDateTimeLabelFormatsOptions; /** * (Highcharts) Whether to force the axis to end on a tick. Use this option * with the `maxPadding` option to control the axis end. */ endOnTick?: boolean; /** * (Highcharts) Event handlers for the axis. */ events?: ChartParallelAxesEventsOptions; /** * (Highcharts, Highstock, Gantt) The lowest allowed value for automatically * computed axis extremes. */ floor?: number; /** * (Gantt) Set grid options for the axis labels. Requires Highcharts Gantt. */ grid?: ChartParallelAxesGridOptions; /** * (Highcharts, Highstock, Gantt) The Z index of the grid lines. */ gridZIndex?: number; /** * (Highstock) The height of the Y axis. If it's a number, it is interpreted * as pixels. * * Since Highstock 2: If it's a percentage string, it is interpreted as * percentages of the total plot height. */ height?: (number|string); /** * (Highcharts) The axis labels show the number or category for each tick. */ labels?: ChartParallelAxesLabelsOptions; /** * (Highcharts) The color of the line marking the axis itself. * * In styled mode, the line stroke is given in the `.highcharts-axis-line` * or `.highcharts-xaxis-line` class. */ lineColor?: ColorString; /** * (Highcharts) The width of the line marking the axis itself. * * In styled mode, the stroke width is given in the `.highcharts-axis-line` * or `.highcharts-xaxis-line` class. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) Index of another axis that this axis is * linked to. When an axis is linked to a master axis, it will take the same * extremes as the master, but as assigned by min or max or by setExtremes. * It can be used to show additional info, or to ease reading the chart by * duplicating the scales. */ linkedTo?: number; /** * (Highcharts) If there are multiple axes on the same side of the chart, * the pixel margin between the axes. Defaults to 0 on vertical axes, 15 on * horizontal axes. */ margin?: any; /** * (Highcharts) The maximum value of the axis. If `null`, the max value is * automatically calculated. * * If the endOnTick option is true, the `max` value might be rounded up. * * If a tickAmount is set, the axis may be extended beyond the set max in * order to reach the given number of ticks. The same may happen in a chart * with multiple axes, determined by chart. alignTicks, where a `tickAmount` * is applied internally. */ max?: (number|null); /** * (Highstock) Maximal size of a resizable axis. Could be set as a percent * of plot area or pixel size. * * This feature requires the `drag-panes.js` module. */ maxLength?: (number|string); /** * (Highcharts, Highstock, Gantt) Padding of the max value relative to the * length of the axis. A padding of 0.05 will make a 100px axis 5px longer. * This is useful when you don't want the highest data value to appear on * the edge of the plot area. When the axis' `max` option is set or a max * extreme is set using `axis.setExtremes()`, the maxPadding will be * ignored. */ maxPadding?: number; /** * (Highstock, Gantt) Maximum range which can be set using the navigator's * handles. Opposite of xAxis.minRange. */ maxRange?: number; /** * (Highcharts) The minimum value of the axis. If `null` the min value is * automatically calculated. * * If the startOnTick option is true (default), the `min` value might be * rounded down. * * The automatically calculated minimum value is also affected by floor, * softMin, minPadding, minRange as well as series.threshold and * series.softThreshold. */ min?: (number|null); /** * (Highstock) Minimal size of a resizable axis. Could be set as a percent * of plot area or pixel size. * * This feature requires the `drag-panes.js` module. */ minLength?: (number|string); /** * (Highcharts) Color for the minor tick marks. */ minorTickColor?: ColorString; /** * (Highcharts) Specific tick interval in axis units for the minor ticks. On * a linear axis, if `"auto"`, the minor tick interval is calculated as a * fifth of the tickInterval. If `null` or `undefined`, minor ticks are not * shown. * * On logarithmic axes, the unit is the power of the value. For example, * setting the minorTickInterval to 1 puts one tick on each of 0.1, 1, 10, * 100 etc. Setting the minorTickInterval to 0.1 produces 9 ticks between 1 * and 10, 10 and 100 etc. * * If user settings dictate minor ticks to become too dense, they don't make * sense, and will be ignored to prevent performance problems. */ minorTickInterval?: (number|string|null); /** * (Highcharts) The pixel length of the minor tick marks. */ minorTickLength?: number; /** * (Highcharts) The position of the minor tick marks relative to the axis * line. Can be one of `inside` and `outside`. */ minorTickPosition?: OptionsMinorTickPositionValue; /** * (Highcharts) Enable or disable minor ticks. Unless minorTickInterval is * set, the tick interval is calculated as a fifth of the `tickInterval`. * * On a logarithmic axis, minor ticks are laid out based on a best guess, * attempting to enter approximately 5 minor ticks between each major tick. * * Prior to v6.0.0, ticks were unabled in auto layout by setting * `minorTickInterval` to `"auto"`. */ minorTicks?: boolean; /** * (Highcharts) The pixel width of the minor tick mark. */ minorTickWidth?: number; /** * (Highcharts, Highstock, Gantt) Padding of the min value relative to the * length of the axis. A padding of 0.05 will make a 100px axis 5px longer. * This is useful when you don't want the lowest data value to appear on the * edge of the plot area. When the axis' `min` option is set or a max * extreme is set using `axis.setExtremes()`, the maxPadding will be * ignored. */ minPadding?: number; /** * (Highcharts) The minimum range to display on this axis. The entire axis * will not be allowed to span over a smaller interval than this. For * example, for a datetime axis the main unit is milliseconds. If minRange * is set to 3600000, you can't zoom in more than to one hour. * * The default minRange for the x axis is five times the smallest interval * between any of the data points. * * On a logarithmic axis, the unit for the minimum range is the power. So a * minRange of 1 means that the axis can be zoomed to 10-100, 100-1000, * 1000-10000 etc. * * Note that the `minPadding`, `maxPadding`, `startOnTick` and `endOnTick` * settings also affect how the extremes of the axis are computed. */ minRange?: number; /** * (Highcharts) The minimum tick interval allowed in axis values. For * example on zooming in on an axis with daily data, this can be used to * prevent the axis from showing hours. Defaults to the closest distance * between two points on the axis. */ minTickInterval?: number; /** * (Highcharts) The distance in pixels from the plot area to the axis line. * A positive offset moves the axis with it's line, labels and ticks away * from the plot area. This is typically used when two or more axes are * displayed on the same side of the plot. With multiple axes the offset is * dynamically adjusted to avoid collision, this can be overridden by * setting offset explicitly. */ offset?: number; /** * (Highstock, Highcharts, Gantt) Whether to display the axis on the * opposite side of the normal. The normal is on the left side for vertical * axes and bottom for horizontal, so the opposite sides will be right and * top respectively. This is typically used with dual or multiple axes. */ opposite?: boolean; /** * (Highcharts) Refers to the index in the panes array. Used for circular * gauges and polar charts. When the option is not set then first pane will * be used. */ pane?: number; /** * (Highstock) The zoomed range to display when only defining one or none of * `min` or `max`. For example, to show the latest month, a range of one * month can be set. */ range?: number; /** * (Highstock) Options for axis resizing. This feature requires the * drag-panes.js module. It adds a thick line between panes which the user * can drag in order to resize the panes. */ resize?: ChartParallelAxesResizeOptions; /** * (Highcharts) Whether to reverse the axis so that the highest number is * closest to the origin. */ reversed?: boolean; /** * (Highcharts, Highstock) If `true`, the first series in a stack will be * drawn on top in a positive, non-reversed Y axis. If `false`, the first * series is in the base of the stack. */ reversedStacks?: boolean; /** * (Highcharts) Whether to show the axis line and title when the axis has no * data. */ showEmpty?: boolean; /** * (Highcharts) Whether to show the first tick label. */ showFirstLabel?: boolean; /** * (Highcharts, Highstock, Gantt) Whether to show the last tick label. * Defaults to `true` on cartesian charts, and `false` on polar charts. */ showLastLabel?: boolean; /** * (Highcharts, Highstock, Gantt) A soft maximum for the axis. If the series * data maximum is less than this, the axis will stay at this maximum, but * if the series data maximum is higher, the axis will flex to show all * data. * * **Note**: The series.softThreshold option takes precedence over this * option. */ softMax?: number; /** * (Highcharts, Highstock, Gantt) A soft minimum for the axis. If the series * data minimum is greater than this, the axis will stay at this minimum, * but if the series data minimum is lower, the axis will flex to show all * data. * * **Note**: The series.softThreshold option takes precedence over this * option. */ softMin?: number; /** * (Highcharts, Highstock, Gantt) For datetime axes, this decides where to * put the tick between weeks. 0 = Sunday, 1 = Monday. */ startOfWeek?: number; /** * (Highcharts, Highstock, Gantt) Whether to force the axis to start on a * tick. Use this option with the `maxPadding` option to control the axis * start. */ startOnTick?: boolean; /** * (Gantt) For vertical axes only. Setting the static scale ensures that * each tick unit is translated into a fixed pixel height. For example, * setting the static scale to 24 results in each Y axis category taking up * 24 pixels, and the height of the chart adjusts. Adding or removing items * will make the chart resize. */ staticScale?: number; /** * (Highcharts, Highstock, Gantt) The amount of ticks to draw on the axis. * This opens up for aligning the ticks of multiple charts or panes within a * chart. This option overrides the `tickPixelInterval` option. * * This option only has an effect on linear axes. Datetime, logarithmic or * category axes are not affected. */ tickAmount?: number; /** * (Highcharts) Color for the main tick marks. * * In styled mode, the stroke is given in the `.highcharts-tick` class. */ tickColor?: ColorString; /** * (Highcharts) The interval of the tick marks in axis units. When * `undefined`, the tick interval is computed to approximately follow the * tickPixelInterval on linear and datetime axes. On categorized axes, a * `undefined` tickInterval will default to 1, one category. Note that * datetime axes are based on milliseconds, so for example an interval of * one day is expressed as `24 * 3600 * 1000`. * * On logarithmic axes, the tickInterval is based on powers, so a * tickInterval of 1 means one tick on each of 0.1, 1, 10, 100 etc. A * tickInterval of 2 means a tick of 0.1, 10, 1000 etc. A tickInterval of * 0.2 puts a tick on 0.1, 0.2, 0.4, 0.6, 0.8, 1, 2, 4, 6, 8, 10, 20, 40 * etc. * * If the tickInterval is too dense for labels to be drawn, Highcharts may * remove ticks. * * If the chart has multiple axes, the alignTicks option may interfere with * the `tickInterval` setting. */ tickInterval?: number; /** * (Highcharts) The pixel length of the main tick marks. */ tickLength?: number; /** * (Highcharts, Gantt) For categorized axes only. If `on` the tick mark is * placed in the center of the category, if `between` the tick mark is * placed between categories. The default is `between` if the `tickInterval` * is 1, else `on`. */ tickmarkPlacement?: OptionsTickmarkPlacementValue; /** * (Highcharts) If tickInterval is `null` this option sets the approximate * pixel interval of the tick marks. Not applicable to categorized axis. * * The tick interval is also influenced by the minTickInterval option, that, * by default prevents ticks from being denser than the data points. */ tickPixelInterval?: number; /** * (Highcharts) The position of the major tick marks relative to the axis * line. Can be one of `inside` and `outside`. */ tickPosition?: OptionsTickPositionValue; /** * (Highcharts) A callback function returning array defining where the ticks * are laid out on the axis. This overrides the default behaviour of * tickPixelInterval and tickInterval. The automatic tick positions are * accessible through `this.tickPositions` and can be modified by the * callback. */ tickPositioner?: AxisTickPositionerCallbackFunction; /** * (Highcharts) An array defining where the ticks are laid out on the axis. * This overrides the default behaviour of tickPixelInterval and * tickInterval. */ tickPositions?: Array<number>; /** * (Highcharts, Highstock, Gantt) The pixel width of the major tick marks. */ tickWidth?: number; /** * (Highcharts) Titles for yAxes are taken from xAxis.categories. All * options for `xAxis.labels` applies to parallel coordinates titles. For * example, to style categories, use xAxis.labels.style. */ title?: ChartParallelAxesTitleOptions; /** * (Highcharts) Parallel coordinates only. Format that will be used for * point.y and available in tooltip.pointFormat as `{point.formattedValue}`. * If not set, `{point.formattedValue}` will use other options, in this * order: * * 1. yAxis.labels.format will be used if set * * 2. If yAxis is a category, then category name will be displayed * * 3. If yAxis is a datetime, then value will use the same format as yAxis * labels * * 4. If yAxis is linear/logarithmic type, then simple value will be used */ tooltipValueFormat?: string; /** * (Highstock) The top position of the Y axis. If it's a number, it is * interpreted as pixel position relative to the chart. * * Since Highstock 2: If it's a percentage string, it is interpreted as * percentages of the plot height, offset from plot area top. */ top?: (number|string); /** * (Highcharts, Gantt) The type of axis. Can be one of `linear`, * `logarithmic`, `datetime`, `category` or `treegrid`. Defaults to * `treegrid` for Gantt charts, `linear` for other chart types. * * In a datetime axis, the numbers are given in milliseconds, and tick marks * are placed on appropriate values, like full hours or days. In a category * or treegrid axis, the point names of the chart's series are used for * categories, if a categories array is not defined. */ type?: AxisTypeValue; /** * (Highcharts, Gantt) Applies only when the axis `type` is `category`. When * `uniqueNames` is true, points are placed on the X axis according to their * names. If the same point name is repeated in the same or another series, * the point is placed on the same X position as other points of the same * name. When `uniqueNames` is false, the points are laid out in increasing * X positions regardless of their names, and the X axis category will take * the name of the last point in each position. */ uniqueNames?: boolean; /** * (Highcharts, Highstock, Gantt) Datetime axis only. An array determining * what time intervals the ticks are allowed to fall on. Each array item is * an array where the first value is the time unit and the second value * another array of allowed multiples. Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; /** * (Highcharts, Highstock, Gantt) Whether axis, including axis title, line, * ticks and labels, should be visible. */ visible?: boolean; } /** * (Highstock) Contains two arrays of axes that are controlled by control line * of the axis. * * This feature requires the `drag-panes.js` module. */ export interface ChartParallelAxesResizeControlledAxisOptions { /** * (Highstock) Array of axes that should move out of the way of resizing * being done for the current axis. If not set, the next axis will be used. * * This feature requires the `drag-panes.js` module. */ next?: Array<(string|number)>; /** * (Highstock) Array of axes that should move with the current axis while * resizing. * * This feature requires the `drag-panes.js` module. */ prev?: Array<(string|number)>; } /** * (Highstock) Options for axis resizing. This feature requires the * drag-panes.js module. It adds a thick line between panes which the user can * drag in order to resize the panes. */ export interface ChartParallelAxesResizeOptions { /** * (Highstock) Contains two arrays of axes that are controlled by control * line of the axis. * * This feature requires the `drag-panes.js` module. */ controlledAxis?: ChartParallelAxesResizeControlledAxisOptions; /** * (Highstock) Cursor style for the control line. * * In styled mode use class `highcharts-axis-resizer` instead. * * This feature requires the `drag-panes.js` module. */ cursor?: string; /** * (Highstock) Enable or disable resize by drag for the axis. * * This feature requires the `drag-panes.js` module. */ enabled?: boolean; /** * (Highstock) Color of the control line. * * In styled mode use class `highcharts-axis-resizer` instead. * * This feature requires the `drag-panes.js` module. */ lineColor?: ColorString; /** * (Highstock) Dash style of the control line. * * In styled mode use class `highcharts-axis-resizer` instead. * * This feature requires the `drag-panes.js` module. */ lineDashStyle?: string; /** * (Highstock) Width of the control line. * * In styled mode use class `highcharts-axis-resizer` instead. * * This feature requires the `drag-panes.js` module. */ lineWidth?: number; /** * (Highstock) Horizontal offset of the control line. * * This feature requires the `drag-panes.js` module. */ x?: number; /** * (Highstock) Vertical offset of the control line. * * This feature requires the `drag-panes.js` module. */ y?: number; } /** * (Highcharts) Titles for yAxes are taken from xAxis.categories. All options * for `xAxis.labels` applies to parallel coordinates titles. For example, to * style categories, use xAxis.labels.style. */ export interface ChartParallelAxesTitleOptions { reserveSpace?: boolean; text?: string; /** * (Highcharts) Alignment of the text, can be `"left"`, `"right"` or * `"center"`. Default alignment depends on the title.align: * * Horizontal axes: * * - for `align` = `"low"`, `textAlign` is set to `left` * * - for `align` = `"middle"`, `textAlign` is set to `center` * * - for `align` = `"high"`, `textAlign` is set to `right` * * Vertical axes: * * - for `align` = `"low"` and `opposite` = `true`, `textAlign` is set to * `right` * * - for `align` = `"low"` and `opposite` = `false`, `textAlign` is set to * `left` * * - for `align` = `"middle"`, `textAlign` is set to `center` * * - for `align` = `"high"` and `opposite` = `true` `textAlign` is set to * `left` * * - for `align` = `"high"` and `opposite` = `false` `textAlign` is set to * `right` */ textAlign?: AlignValue; } /** * (Highcharts, Highstock, Highmaps, Gantt) The button that appears after a * selection zoom, allowing the user to reset zoom. */ export interface ChartResetZoomButtonOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) The position of the button. */ position?: (AlignObject|ChartResetZoomButtonPositionOptions); /** * (Highcharts, Highstock, Highmaps, Gantt) What frame the button placement * should be related to. Can be either `plotBox` or `spacingBox`. */ relativeTo?: ButtonRelativeToValue; /** * (Highcharts, Highstock, Highmaps, Gantt) A collection of attributes for * the button. The object takes SVG attributes like `fill`, `stroke`, * `stroke-width` or `r`, the border radius. The theme also supports * `style`, a collection of CSS properties for the text. Equivalent * attributes for the hover state are given in `theme.states.hover`. */ theme?: SVGAttributes; } /** * (Highcharts, Highstock, Highmaps, Gantt) The position of the button. */ export interface ChartResetZoomButtonPositionOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) The horizontal alignment of the * button. */ align?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) The vertical alignment of the * button. */ verticalAlign?: VerticalAlignValue; /** * (Highcharts, Highstock, Highmaps, Gantt) The horizontal offset of the * button. */ x?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The vertical offset of the * button. */ y?: number; } /** * (Highcharts, Gantt) Options for a scrollable plot area. This feature provides * a minimum width for the plot area of the chart. If the width gets smaller * than this, typically on mobile devices, a native browser scrollbar is * presented below the chart. This scrollbar provides smooth scrolling for the * contents of the plot area, whereas the title, legend and axes are fixed. */ export interface ChartScrollablePlotAreaOptions { /** * (Highcharts, Gantt) The minimum width for the plot area. If it gets * smaller than this, the plot area will become scrollable. */ minWidth?: number; /** * (Highcharts, Gantt) The opacity of mask applied on one of the sides of * the plot area. */ opacity?: number; /** * (Highcharts, Gantt) The initial scrolling position of the scrollable plot * area. Ranges from 0 to 1, where 0 aligns the plot area to the left and 1 * aligns it to the right. Typically we would use 1 if the chart has right * aligned Y axes. */ scrollPositionX?: number; } /** * Axis context of the selection. */ export interface ChartSelectionAxisContextObject { /** * The selected Axis. */ axis: Axis; /** * The maximum axis value, either automatic or set manually. */ max: number; /** * The minimum axis value, either automatic or set manually. */ min: number; } /** * The primary axes are `xAxis[0]` and `yAxis[0]`. Remember the unit of a * datetime axis is milliseconds since 1970-01-01 00:00:00. */ export interface ChartSelectionContextObject extends Event { /** * Arrays containing the axes of each dimension and each axis' min and max * values. */ xAxis: Array<ChartSelectionAxisContextObject>; /** * Arrays containing the axes of each dimension and each axis' min and max * values. */ yAxis: Array<ChartSelectionAxisContextObject>; } /** * (Highcharts, Highmaps) Accessibility options for an axis. Requires the * accessibility module. */ export interface ColorAxisAccessibilityOptions { /** * (Highcharts, Highmaps) Description for an axis to expose to screen reader * users. */ description?: string; /** * (Highcharts, Highmaps) Enable axis accessibility features, including axis * information in the screen reader information region. If this is disabled * on the xAxis, the x values are not exposed to screen readers for the * individual data points by default. */ enabled?: boolean; /** * (Highcharts, Highmaps) Range description for an axis. Overrides the * default range description. Set to empty to disable range description for * this axis. */ rangeDescription?: string; } /** * (Gantt) Text labels for the plot bands */ export interface ColorAxisCurrentDateIndicatorLabelOptions { /** * (Gantt) Horizontal alignment of the label. Can be one of "left", "center" * or "right". */ align?: AlignValue; /** * (Gantt) Rotation of the text label in degrees. Defaults to 0 for * horizontal plot lines and 90 for vertical lines. */ rotation?: number; /** * (Gantt) CSS styles for the text label. * * In styled mode, the labels are styled by the * `.highcharts-plot-line-label` class. */ style?: CSSObject; /** * (Gantt) The text itself. A subset of HTML is supported. */ text?: string; /** * (Gantt) The text alignment for the label. While `align` determines where * the texts anchor point is placed within the plot band, `textAlign` * determines how the text is aligned against its anchor point. Possible * values are "left", "center" and "right". Defaults to the same as the * `align` option. */ textAlign?: AlignValue; /** * (Gantt) Whether to use HTML to render the labels. */ useHTML?: boolean; /** * (Gantt) Vertical alignment of the label relative to the plot line. Can be * one of "top", "middle" or "bottom". */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Horizontal position relative the alignment. Default varies by * orientation. */ x?: number; /** * (Gantt) Vertical position of the text baseline relative to the alignment. * Default varies by orientation. */ y?: number; } /** * (Gantt) Show an indicator on the axis for the current date and time. Can be a * boolean or a configuration object similar to xAxis.plotLines. */ export interface ColorAxisCurrentDateIndicatorOptions { /** * (Gantt) A custom class name, in addition to the default * `highcharts-plot-line`, to apply to each individual line. */ className?: string; /** * (Gantt) The color of the line. */ color?: ColorString; /** * (Gantt) The dashing or dot style for the plot line. For possible values * see this overview. */ dashStyle?: DashStyleValue; /** * (Gantt) An object defining mouse events for the plot line. Supported * properties are `click`, `mouseover`, `mouseout`, `mousemove`. */ events?: any; /** * (Gantt) An id used for identifying the plot line in Axis.removePlotLine. */ id?: string; /** * (Gantt) Text labels for the plot bands */ label?: ColorAxisCurrentDateIndicatorLabelOptions; /** * (Gantt) The width or thickness of the plot line. */ width?: number; /** * (Gantt) The z index of the plot line within the chart. */ zIndex?: number; } /** * (Highcharts, Highmaps) An array of data classes or ranges for the choropleth * map. If none given, the color axis is scalar and values are distributed as a * gradient between the minimum and maximum colors. */ export interface ColorAxisDataClassesOptions { /** * (Highcharts, Highmaps) The color of each data class. If not set, the * color is pulled from the global or chart-specific colors array. In styled * mode, this option is ignored. Instead, use colors defined in CSS. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highmaps) The start of the value range that the data class * represents, relating to the point value. * * The range of each `dataClass` is closed in both ends, but can be * overridden by the next `dataClass`. */ from?: number; /** * (Highcharts, Highmaps) The name of the data class as it appears in the * legend. If no name is given, it is automatically created based on the * `from` and `to` values. For full programmatic control, * legend.labelFormatter can be used. In the formatter, `this.from` and * `this.to` can be accessed. */ name?: string; /** * (Highcharts, Highmaps) The end of the value range that the data class * represents, relating to the point value. * * The range of each `dataClass` is closed in both ends, but can be * overridden by the next `dataClass`. */ to?: number; } /** * (Highcharts, Highmaps) Event handlers for the axis. */ export interface ColorAxisEventsOptions { /** * (Highcharts, Highmaps) As opposed to the `setExtremes` event, this event * fires after the final min and max values are computed and corrected for * `minRange`. * * Fires when the minimum and maximum is set for the axis, either by calling * the `.setExtremes()` method or by selecting an area in the chart. One * parameter, `event`, is passed to the function, containing common event * information. * * The new user set minimum and maximum values can be found by `event.min` * and `event.max`. These reflect the axis minimum and maximum in axis * values. The actual data extremes are found in `event.dataMin` and * `event.dataMax`. */ afterSetExtremes?: AxisSetExtremesEventCallbackFunction; /** * (Highcharts, Highmaps) Fires when the legend item belonging to the * colorAxis is clicked. One parameter, `event`, is passed to the function. */ legendItemClick?: Function; /** * (Highcharts, Highmaps) Fires when the minimum and maximum is set for the * axis, either by calling the `.setExtremes()` method or by selecting an * area in the chart. One parameter, `event`, is passed to the function, * containing common event information. * * The new user set minimum and maximum values can be found by `event.min` * and `event.max`. These reflect the axis minimum and maximum in data * values. When an axis is zoomed all the way out from the "Reset zoom" * button, `event.min` and `event.max` are null, and the new extremes are * set based on `this.dataMin` and `this.dataMax`. */ setExtremes?: AxisSetExtremesEventCallbackFunction; } /** * (Gantt) Set grid options for the axis labels. Requires Highcharts Gantt. */ export interface ColorAxisGridOptions { /** * (Gantt) Set border color for the label grid lines. */ borderColor?: ColorString; /** * (Gantt) Set border width of the label grid lines. */ borderWidth?: number; /** * (Gantt) Set cell height for grid axis labels. By default this is * calculated from font size. */ cellHeight?: number; /** * (Gantt) Set specific options for each column (or row for horizontal axes) * in the grid. Each extra column/row is its own axis, and the axis options * can be set here. */ columns?: Array<XAxisOptions>; /** * (Gantt) Enable grid on the axis labels. Defaults to true for Gantt * charts. */ enabled?: boolean; } /** * (Highcharts, Highmaps) The axis labels show the number for each tick. * * For more live examples on label options, see xAxis.labels in the Highcharts * API. */ export interface ColorAxisLabelsOptions { /** * (Highcharts, Highmaps) What part of the string the given position is * anchored to. If `left`, the left side of the string is at the axis * position. Can be one of `"left"`, `"center"` or `"right"`. Defaults to an * intelligent guess based on which side of the chart the axis is on and the * rotation of the label. */ align?: AlignValue; /** * (Highcharts, Highstock, Gantt) For horizontal axes, the allowed degrees * of label rotation to prevent overlapping labels. If there is enough * space, labels are not rotated. As the chart gets narrower, it will start * rotating the labels -45 degrees, then remove every second label and try * again with rotations 0 and -45 etc. Set it to `false` to disable * rotation, which will cause the labels to word-wrap if possible. */ autoRotation?: (false|Array<number>); /** * (Highcharts, Gantt) When each category width is more than this many * pixels, we don't apply auto rotation. Instead, we lay out the axis label * with word wrap. A lower limit makes sense when the label contains * multiple short words that don't extend the available horizontal space for * each label. */ autoRotationLimit?: number; /** * (Highcharts, Gantt) Polar charts only. The label's pixel distance from * the perimeter of the plot area. */ distance?: number; /** * (Highcharts, Highmaps) Enable or disable the axis labels. */ enabled?: boolean; /** * (Highcharts, Highmaps) A format string for the axis label. */ format?: string; /** * (Highcharts, Highmaps) Callback JavaScript function to format the label. * The value is given by `this.value`. Additional properties for `this` are * `axis`, `chart`, `isFirst` and `isLast`. The value of the default label * formatter can be retrieved by calling * `this.axis.defaultLabelFormatter.call(this)` within the function. * * Defaults to: * * (see online documentation for example) */ formatter?: FormatterCallbackFunction<AxisLabelsFormatterContextObject>; /** * (Gantt) The number of pixels to indent the labels per level in a treegrid * axis. */ indentation?: number; /** * (Highcharts, Highmaps) Horizontal axis only. When `staggerLines` is not * set, `maxStaggerLines` defines how many lines the axis is allowed to add * to automatically avoid overlapping X labels. Set to `1` to disable * overlap detection. */ maxStaggerLines?: number; /** * (Highcharts, Highmaps) How to handle overflowing labels on horizontal * color axis. Can be undefined or "justify". If "justify", labels will not * render outside the legend area. If there is room to move it, it will be * aligned to the edge, else it will be removed. */ overflow?: OptionsOverflowValue; /** * (Highcharts, Gantt) The pixel padding for axis labels, to ensure white * space between them. */ padding?: number; /** * (Highcharts) Defines how the labels are be repositioned according to the * 3D chart orientation. * * - `'offset'`: Maintain a fixed horizontal/vertical distance from the tick * marks, despite the chart orientation. This is the backwards compatible * behavior, and causes skewing of X and Z axes. * * - `'chart'`: Preserve 3D position relative to the chart. This looks nice, * but hard to read if the text isn't forward-facing. * * - `'flap'`: Rotated text along the axis to compensate for the chart * orientation. This tries to maintain text as legible as possible on all * orientations. * * - `'ortho'`: Rotated text along the axis direction so that the labels are * orthogonal to the axis. This is very similar to `'flap'`, but prevents * skewing the labels (X and Y scaling are still present). */ position3d?: OptionsPosition3dValue; /** * (Highcharts, Gantt) Whether to reserve space for the labels. By default, * space is reserved for the labels in these cases: * * * On all horizontal axes. * * * On vertical axes if `label.align` is `right` on a left-side axis or * `left` on a right-side axis. * * * On vertical axes if `label.align` is `center`. * * This can be turned off when for example the labels are rendered inside * the plot area instead of outside. */ reserveSpace?: boolean; /** * (Highcharts, Highmaps) Rotation of the labels in degrees. */ rotation?: number; /** * (Highcharts) If enabled, the axis labels will skewed to follow the * perspective. * * This will fix overlapping labels and titles, but texts become less * legible due to the distortion. * * The final appearance depends heavily on `labels.position3d`. */ skew3d?: boolean; /** * (Highcharts, Highmaps) Horizontal axes only. The number of lines to * spread the labels over to make room or tighter labels. */ staggerLines?: number; /** * (Highcharts, Highmaps) To show only every _n_'th label on the axis, set * the step to _n_. Setting the step to 2 shows every other label. * * By default, the step is calculated automatically to avoid overlap. To * prevent this, set it to 1\. This usually only happens on a category axis, * and is often a sign that you have chosen the wrong axis type. * * Read more at Axis docs => What axis should I use? */ step?: number; /** * (Highcharts, Highmaps) CSS styles for the label. Use `whiteSpace: * 'nowrap'` to prevent wrapping of category labels. Use `textOverflow: * 'none'` to prevent ellipsis (dots). * * In styled mode, the labels are styled with the `.highcharts-axis-labels` * class. */ style?: CSSObject; /** * (Highcharts, Highmaps) Whether to use HTML to render the labels. */ useHTML?: boolean; /** * (Highcharts, Highmaps) The x position offset of the label relative to the * tick position on the axis. */ x?: number; /** * (Highcharts, Highmaps) The y position offset of the label relative to the * tick position on the axis. The default makes it adapt to the font size on * bottom axis. */ y?: number; /** * (Highcharts, Highmaps) The Z index for the axis labels. */ zIndex?: number; } /** * (Highcharts, Highmaps) The triangular marker on a scalar color axis that * points to the value of the hovered area. To disable the marker, set `marker: * null`. */ export interface ColorAxisMarkerOptions { /** * (Highcharts, Highmaps) Animation for the marker as it moves between * values. Set to `false` to disable animation. Defaults to `{ duration: 50 * }`. */ animation?: (boolean|AnimationOptionsObject); /** * (Highcharts, Highmaps) The color of the marker. */ color?: (ColorString|GradientColorObject|PatternObject); } /** * (Highcharts, Highmaps) A color axis for choropleth maps and heat maps. * Visually, the color axis will appear as a gradient or as separate items * inside the legend, depending on whether the axis is scalar or based on data * classes. * * For supported color formats, see the docs article about colors. * * A scalar color axis is represented by a gradient. The colors either range * between the minColor and the maxColor, or for more fine grained control the * colors can be defined in stops. Often times, the color axis needs to be * adjusted to get the right color spread for the data. In addition to stops, * consider using a logarithmic axis type, or setting min and max to avoid the * colors being determined by outliers. * * When dataClasses are used, the ranges are subdivided into separate classes * like categories based on their values. This can be used for ranges between * two values, but also for a true category. However, when your data is * categorized, it may be as convenient to add each category to a separate * series. * * See the Axis object for programmatic access to the axis. */ export interface ColorAxisOptions { /** * (Highcharts, Highmaps) Accessibility options for an axis. Requires the * accessibility module. */ accessibility?: (object|ColorAxisAccessibilityOptions); /** * (Highcharts, Highstock, Gantt) When using multiple axis, the ticks of two * or more opposite axes will automatically be aligned by adding ticks to * the axis or axes with the least ticks, as if `tickAmount` were specified. * * This can be prevented by setting `alignTicks` to false. If the grid lines * look messy, it's a good idea to hide them for the secondary axis by * setting `gridLineWidth` to 0. * * If `startOnTick` or `endOnTick` in an Axis options are set to false, then * the `alignTicks ` will be disabled for the Axis. * * Disabled for logarithmic axes. */ alignTicks?: boolean; /** * (Highcharts, Highmaps) Whether to allow decimals on the color axis. */ allowDecimals?: boolean; /** * (Highcharts, Highstock, Gantt) The highest allowed value for * automatically computed axis extremes. */ ceiling?: number; /** * (Highcharts, Highmaps) A class name that opens for styling the axis by * CSS, especially in Highcharts styled mode. The class name is applied to * group elements for the grid, axis elements and labels. */ className?: string; /** * (Gantt) Show an indicator on the axis for the current date and time. Can * be a boolean or a configuration object similar to xAxis.plotLines. */ currentDateIndicator?: (boolean|ColorAxisCurrentDateIndicatorOptions); /** * (Highcharts, Highmaps) Determines how to set each data class' color if no * individual color is set. The default value, `tween`, computes * intermediate colors between `minColor` and `maxColor`. The other possible * value, `category`, pulls colors from the global or chart specific colors * array. */ dataClassColor?: OptionsDataClassColorValue; /** * (Highcharts, Highmaps) An array of data classes or ranges for the * choropleth map. If none given, the color axis is scalar and values are * distributed as a gradient between the minimum and maximum colors. */ dataClasses?: Array<ColorAxisDataClassesOptions>; /** * (Highcharts, Highmaps) Whether to force the axis to end on a tick. Use * this option with the maxPadding option to control the axis end. */ endOnTick?: boolean; /** * (Highcharts, Highmaps) Event handlers for the axis. */ events?: ColorAxisEventsOptions; /** * (Highcharts, Highstock, Gantt) The lowest allowed value for automatically * computed axis extremes. */ floor?: number; /** * (Gantt) Set grid options for the axis labels. Requires Highcharts Gantt. */ grid?: ColorAxisGridOptions; /** * (Highcharts, Highmaps) Color of the grid lines extending from the axis * across the gradient. */ gridLineColor?: ColorString; /** * (Highcharts, Highmaps) The dash or dot style of the grid lines. For * possible values, see this demonstration. */ gridLineDashStyle?: DashStyleValue; /** * (Highcharts, Highmaps) The width of the grid lines extending from the * axis across the gradient of a scalar color axis. */ gridLineWidth?: number; /** * (Highcharts, Highstock, Gantt) The Z index of the grid lines. */ gridZIndex?: number; /** * (Highcharts, Highmaps) An id for the axis. This can be used after render * time to get a pointer to the axis object through `chart.get()`. */ id?: string; /** * (Highcharts, Highmaps) The axis labels show the number for each tick. * * For more live examples on label options, see xAxis.labels in the * Highcharts API. */ labels?: ColorAxisLabelsOptions; /** * (Highcharts, Highmaps) The color of the line marking the axis itself. * * In styled mode, the line stroke is given in the `.highcharts-axis-line` * or `.highcharts-xaxis-line` class. */ lineColor?: ColorString; /** * (Highcharts, Highmaps) If there are multiple axes on the same side of the * chart, the pixel margin between the axes. Defaults to 0 on vertical axes, * 15 on horizontal axes. */ margin?: any; /** * (Highcharts, Highmaps) The triangular marker on a scalar color axis that * points to the value of the hovered area. To disable the marker, set * `marker: null`. */ marker?: ColorAxisMarkerOptions; /** * (Highcharts, Highmaps) The maximum value of the axis in terms of map * point values. If `null`, the max value is automatically calculated. If * the `endOnTick` option is true, the max value might be rounded up. */ max?: number; /** * (Highcharts, Highmaps) The color to represent the maximum of the color * axis. Unless dataClasses or stops are set, the gradient ends at this * value. * * If dataClasses are set, the color is based on minColor and maxColor * unless a color is set for each data class, or the dataClassColor is set. */ maxColor?: ColorString; /** * (Highcharts, Highmaps) Padding of the max value relative to the length of * the axis. A padding of 0.05 will make a 100px axis 5px longer. */ maxPadding?: number; /** * (Highstock, Gantt) Maximum range which can be set using the navigator's * handles. Opposite of xAxis.minRange. */ maxRange?: number; /** * (Highcharts, Highmaps) The minimum value of the axis in terms of map * point values. If `null`, the min value is automatically calculated. If * the `startOnTick` option is true, the min value might be rounded down. */ min?: number; /** * (Highcharts, Highmaps) The color to represent the minimum of the color * axis. Unless dataClasses or stops are set, the gradient starts at this * value. * * If dataClasses are set, the color is based on minColor and maxColor * unless a color is set for each data class, or the dataClassColor is set. */ minColor?: ColorString; /** * (Highcharts, Highmaps) Color of the minor, secondary grid lines. * * In styled mode, the stroke width is given in the * `.highcharts-minor-grid-line` class. */ minorGridLineColor?: ColorString; /** * (Highcharts, Highmaps) The dash or dot style of the minor grid lines. For * possible values, see this demonstration. */ minorGridLineDashStyle?: DashStyleValue; /** * (Highcharts, Highmaps) Width of the minor, secondary grid lines. * * In styled mode, the stroke width is given in the `.highcharts-grid-line` * class. */ minorGridLineWidth?: number; /** * (Highcharts, Highmaps) Color for the minor tick marks. */ minorTickColor?: ColorString; /** * (Highcharts, Highmaps) Specific tick interval in axis units for the minor * ticks. On a linear axis, if `"auto"`, the minor tick interval is * calculated as a fifth of the tickInterval. If `null` or `undefined`, * minor ticks are not shown. * * On logarithmic axes, the unit is the power of the value. For example, * setting the minorTickInterval to 1 puts one tick on each of 0.1, 1, 10, * 100 etc. Setting the minorTickInterval to 0.1 produces 9 ticks between 1 * and 10, 10 and 100 etc. * * If user settings dictate minor ticks to become too dense, they don't make * sense, and will be ignored to prevent performance problems. */ minorTickInterval?: (number|string|null); /** * (Highcharts, Highmaps) The pixel length of the minor tick marks. */ minorTickLength?: number; /** * (Highcharts, Highmaps) The position of the minor tick marks relative to * the axis line. Can be one of `inside` and `outside`. */ minorTickPosition?: OptionsMinorTickPositionValue; /** * (Highcharts, Highmaps) Enable or disable minor ticks. Unless * minorTickInterval is set, the tick interval is calculated as a fifth of * the `tickInterval`. * * On a logarithmic axis, minor ticks are laid out based on a best guess, * attempting to enter approximately 5 minor ticks between each major tick. * * Prior to v6.0.0, ticks were unabled in auto layout by setting * `minorTickInterval` to `"auto"`. */ minorTicks?: boolean; /** * (Highcharts, Highmaps) The pixel width of the minor tick mark. */ minorTickWidth?: number; /** * (Highcharts, Highmaps) Padding of the min value relative to the length of * the axis. A padding of 0.05 will make a 100px axis 5px longer. */ minPadding?: number; /** * (Highstock) In an ordinal axis, the points are equally spaced in the * chart regardless of the actual time or x distance between them. This * means that missing data periods (e.g. nights or weekends for a stock * chart) will not take up space in the chart. Having `ordinal: false` will * show any gaps created by the `gapSize` setting proportionate to their * duration. * * In stock charts the X axis is ordinal by default, unless the boost module * is used and at least one of the series' data length exceeds the * boostThreshold. */ ordinal?: boolean; /** * (Highstock) Additional range on the right side of the xAxis. Works * similar to `xAxis.maxPadding`, but value is set in milliseconds. Can be * set for both main `xAxis` and the navigator's `xAxis`. */ overscroll?: number; /** * (Highcharts) Refers to the index in the panes array. Used for circular * gauges and polar charts. When the option is not set then first pane will * be used. */ pane?: number; /** * (Highstock) The zoomed range to display when only defining one or none of * `min` or `max`. For example, to show the latest month, a range of one * month can be set. */ range?: number; /** * (Highcharts, Highmaps) Whether to reverse the axis so that the highest * number is closest to the origin. Defaults to `false` in a horizontal * legend and `true` in a vertical legend, where the smallest value starts * on top. */ reversed?: boolean; /** * (Highcharts, Highstock) This option determines how stacks should be * ordered within a group. For example reversed xAxis also reverses stacks, * so first series comes last in a group. To keep order like for * non-reversed xAxis enable this option. */ reversedStacks?: boolean; /** * (Highstock) An optional scrollbar to display on the X axis in response to * limiting the minimum and maximum of the axis values. * * In styled mode, all the presentational options for the scrollbar are * replaced by the classes `.highcharts-scrollbar-thumb`, * `.highcharts-scrollbar-arrow`, `.highcharts-scrollbar-button`, * `.highcharts-scrollbar-rifles` and `.highcharts-scrollbar-track`. */ scrollbar?: ColorAxisScrollbarOptions; /** * (Highcharts, Highmaps) Whether to show the first tick label. */ showFirstLabel?: boolean; /** * (Highcharts, Highmaps) Whether to display the colorAxis in the legend. */ showInLegend?: boolean; /** * (Highcharts, Highstock, Gantt) Whether to show the last tick label. * Defaults to `true` on cartesian charts, and `false` on polar charts. */ showLastLabel?: boolean; /** * (Highcharts, Highstock, Gantt) A soft maximum for the axis. If the series * data maximum is less than this, the axis will stay at this maximum, but * if the series data maximum is higher, the axis will flex to show all * data. */ softMax?: number; /** * (Highcharts, Highstock, Gantt) A soft minimum for the axis. If the series * data minimum is greater than this, the axis will stay at this minimum, * but if the series data minimum is lower, the axis will flex to show all * data. */ softMin?: number; /** * (Highcharts, Highstock, Gantt) For datetime axes, this decides where to * put the tick between weeks. 0 = Sunday, 1 = Monday. */ startOfWeek?: number; /** * (Highcharts, Highmaps) Whether to force the axis to start on a tick. Use * this option with the `maxPadding` option to control the axis start. */ startOnTick?: boolean; /** * (Highcharts, Highmaps) Color stops for the gradient of a scalar color * axis. Use this in cases where a linear gradient between a `minColor` and * `maxColor` is not sufficient. The stops is an array of tuples, where the * first item is a float between 0 and 1 assigning the relative position in * the gradient, and the second item is the color. */ stops?: Array<[number, ColorString]>; /** * (Highcharts, Highstock, Gantt) The amount of ticks to draw on the axis. * This opens up for aligning the ticks of multiple charts or panes within a * chart. This option overrides the `tickPixelInterval` option. * * This option only has an effect on linear axes. Datetime, logarithmic or * category axes are not affected. */ tickAmount?: number; /** * (Highcharts, Highmaps) Color for the main tick marks. * * In styled mode, the stroke is given in the `.highcharts-tick` class. */ tickColor?: ColorString; /** * (Highcharts, Highmaps) The interval of the tick marks in axis units. When * `null`, the tick interval is computed to approximately follow the * `tickPixelInterval`. */ tickInterval?: number; /** * (Highcharts, Highmaps) The pixel length of the main tick marks on the * color axis. */ tickLength?: number; /** * (Highcharts, Gantt) For categorized axes only. If `on` the tick mark is * placed in the center of the category, if `between` the tick mark is * placed between categories. The default is `between` if the `tickInterval` * is 1, else `on`. */ tickmarkPlacement?: OptionsTickmarkPlacementValue; /** * (Highcharts, Highmaps) If tickInterval is `null` this option sets the * approximate pixel interval of the tick marks. */ tickPixelInterval?: number; /** * (Highcharts, Highmaps) The position of the major tick marks relative to * the axis line. Can be one of `inside` and `outside`. */ tickPosition?: OptionsTickPositionValue; /** * (Highcharts, Highmaps) A callback function returning array defining where * the ticks are laid out on the axis. This overrides the default behaviour * of tickPixelInterval and tickInterval. The automatic tick positions are * accessible through `this.tickPositions` and can be modified by the * callback. */ tickPositioner?: AxisTickPositionerCallbackFunction; /** * (Highcharts, Highmaps) An array defining where the ticks are laid out on * the axis. This overrides the default behaviour of tickPixelInterval and * tickInterval. */ tickPositions?: Array<number>; /** * (Highcharts, Highmaps) The pixel width of the major tick marks. Defaults * to 0 on category axes, otherwise 1. * * In styled mode, the stroke width is given in the `.highcharts-tick` * class. */ tickWidth?: (number|undefined); /** * (Highcharts, Highmaps) The type of interpolation to use for the color * axis. Can be `linear` or `logarithmic`. */ type?: ColorAxisTypeValue; /** * (Highcharts, Gantt) Applies only when the axis `type` is `category`. When * `uniqueNames` is true, points are placed on the X axis according to their * names. If the same point name is repeated in the same or another series, * the point is placed on the same X position as other points of the same * name. When `uniqueNames` is false, the points are laid out in increasing * X positions regardless of their names, and the X axis category will take * the name of the last point in each position. */ uniqueNames?: boolean; /** * (Highcharts, Highstock, Gantt) Datetime axis only. An array determining * what time intervals the ticks are allowed to fall on. Each array item is * an array where the first value is the time unit and the second value * another array of allowed multiples. Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; /** * (Highcharts, Highstock, Gantt) Whether axis, including axis title, line, * ticks and labels, should be visible. */ visible?: boolean; } /** * (Highstock) An optional scrollbar to display on the X axis in response to * limiting the minimum and maximum of the axis values. * * In styled mode, all the presentational options for the scrollbar are replaced * by the classes `.highcharts-scrollbar-thumb`, `.highcharts-scrollbar-arrow`, * `.highcharts-scrollbar-button`, `.highcharts-scrollbar-rifles` and * `.highcharts-scrollbar-track`. */ export interface ColorAxisScrollbarOptions { /** * (Highstock) The background color of the scrollbar itself. */ barBackgroundColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the scrollbar's border. */ barBorderColor?: ColorString; /** * (Highstock) The border rounding radius of the bar. */ barBorderRadius?: number; /** * (Highstock) The width of the bar's border. */ barBorderWidth?: number; /** * (Highstock) The color of the small arrow inside the scrollbar buttons. */ buttonArrowColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of scrollbar buttons. */ buttonBackgroundColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the border of the scrollbar buttons. */ buttonBorderColor?: ColorString; /** * (Highstock) The corner radius of the scrollbar buttons. */ buttonBorderRadius?: number; /** * (Highstock) The border width of the scrollbar buttons. */ buttonBorderWidth?: number; /** * (Highstock) Enable or disable the scrollbar. */ enabled?: boolean; /** * (Highstock) The height of the scrollbar. The height also applies to the * width of the scroll arrows so that they are always squares. Defaults to * 20 for touch devices and 14 for mouse devices. */ height?: number; /** * (Highstock) Whether to redraw the main chart as the scrollbar or the * navigator zoomed window is moved. Defaults to `true` for modern browsers * and `false` for legacy IE browsers as well as mobile devices. */ liveRedraw?: boolean; /** * (Highstock) The margin between the scrollbar and its axis when the * scrollbar is applied directly to an axis. */ margin?: number; /** * (Highstock) The minimum width of the scrollbar. */ minWidth?: number; /** * (Highstock) The color of the small rifles in the middle of the scrollbar. */ rifleColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Whether to show or hide the scrollbar when the scrolled * content is zoomed out to it full extent. */ showFull?: boolean; step?: number; /** * (Highstock) The color of the track background. */ trackBackgroundColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the border of the scrollbar track. */ trackBorderColor?: ColorString; /** * (Highstock) The corner radius of the border of the scrollbar track. */ trackBorderRadius?: number; /** * (Highstock) The width of the border of the scrollbar track. */ trackBorderWidth?: number; /** * (Highstock) The z index of the scrollbar group. */ zIndex?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface ConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface ConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) The Pathfinder module allows you to define connections between any * two points, represented as lines - optionally with markers for the start * and/or end points. Multiple algorithms are available for calculating how the * connecting lines are drawn. * * Connector functionality requires Highcharts Gantt to be loaded. In Gantt * charts, the connectors are used to draw dependencies between tasks. */ export interface ConnectorsOptions { /** * (Gantt) Set the default pathfinder margin to use, in pixels. Some * Pathfinder algorithms attempt to avoid obstacles, such as other points in * the chart. These algorithms use this margin to determine how close lines * can be to an obstacle. The default is to compute this automatically from * the size of the obstacles in the chart. * * To draw connecting lines close to existing points, set this to a low * number. For more space around existing points, set this number higher. */ algorithmMargin?: number; /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Enable connectors for this chart. Requires Highcharts Gantt. */ enabled?: boolean; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: ConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: ConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: ConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface ConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highcharts, Highstock, Highmaps, Gantt) Highchart by default puts a credits * label in the lower right corner of the chart. This can be changed using these * options. */ export interface CreditsOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to show the credits * text. */ enabled?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) The URL for the credits label. */ href?: string; /** * (Highmaps) Credits for map source to be concatenated with conventional * credit text. By default this is a format string that collects copyright * information from the map if available. */ mapText?: string; /** * (Highmaps) Detailed credits for map source to be displayed on hover of * credits text. By default this is a format string that collects copyright * information from the map if available. */ mapTextFull?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Position configuration for the * credits label. */ position?: (AlignObject|CreditsPositionOptions); /** * (Highcharts, Highstock, Highmaps, Gantt) CSS styles for the credits * label. */ style?: CSSObject; /** * (Highcharts, Highstock, Highmaps, Gantt) The text for the credits label. */ text?: string; } /** * (Highcharts, Highstock, Highmaps, Gantt) Position configuration for the * credits label. */ export interface CreditsPositionOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Horizontal alignment of the * credits. */ align?: AlignValue; /** * (Highcharts, Highstock, Highmaps, Gantt) Vertical alignment of the * credits. */ verticalAlign?: VerticalAlignValue; /** * (Highcharts, Highstock, Highmaps, Gantt) Horizontal pixel offset of the * credits. */ x?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) Vertical pixel offset of the * credits. */ y?: number; } /** * A style object with camel case property names to define visual appearance of * a SVG element or HTML element. The properties can be whatever styles are * supported on the given SVG or HTML element. */ export interface CSSObject { [key: string]: (boolean|number|string|undefined); /** * Background style for the element. */ background?: string; /** * Background color of the element. */ backgroundColor?: ColorString; /** * Border style for the element. */ border?: string; /** * Radius of the element border. */ borderRadius?: number; /** * Color used in the element. The "contrast" option is a Highcharts custom * property that results in black or white, depending on the background of * the element. */ color?: ("contrast"|ColorString); /** * Style of the mouse cursor when resting over the element. */ cursor?: CursorValue; /** * Font family of the element text. Multiple values have to be in decreasing * preference order and separated by comma. */ fontFamily?: string; /** * Font size of the element text. */ fontSize?: string; /** * Font weight of the element text. */ fontWeight?: string; /** * Height of the element. */ height?: number; /** * Width of the element border. */ lineWidth?: number; /** * Opacity of the element. */ opacity?: number; /** * Space around the element content. */ padding?: string; /** * Behaviour of the element when the mouse cursor rests over it. */ pointerEvents?: string; /** * Positioning of the element. */ position?: string; /** * Alignment of the element text. */ textAlign?: string; /** * Additional decoration of the element text. */ textDecoration?: string; /** * Outline style of the element text. */ textOutline?: string; /** * Line break style of the element text. Highcharts SVG elements support * `ellipsis` when a `width` is set. */ textOverflow?: string; /** * Top spacing of the element relative to the parent element. */ top?: string; /** * Animated transition of selected element properties. */ transition?: string; /** * Line break style of the element text. */ whiteSpace?: string; /** * Width of the element. */ width?: number; } /** * A declarative filter to control of which data labels to display. The * declarative filter is designed for use when callback functions are not * available, like when the chart options require a pure JSON structure or for * use with graphical editors. For programmatic control, use the `formatter` * instead, and return `undefined` to disable a single data label. */ export interface DataLabelsFilterOptionsObject { /** * The operator to compare by. Can be one of `>`, `<`, `>=`, `<=`, `==`, and * `===`. */ operator: DataLabelsFilterOperatorValue; /** * The point property to filter by. Point options are passed directly to * properties, additionally there are `y` value, `percentage` and others * listed under Highcharts.Point members. */ property: string; /** * The value to compare against. */ value: (number|null); } /** * Context for the callback function to format the data label. */ export interface DataLabelsFormatterContextObject { /** * Stacked series and pies only. The point's percentage of the total. */ percentage?: number; /** * The point object. The point name, if defined, is available through * `this.point.name`. */ point: Point; /** * The series object. The series name is available through * `this.series.name`. */ series: Series; /** * Stacked series only. The total value at this point's x value. */ total?: number; /** * The x value. */ x: number; /** * The y value. */ y: (number|null); } /** * Options for the series data labels, appearing next to each data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names. */ export interface DataLabelsOptionsObject { /** * The alignment of the data label compared to the point. If `right`, the * right side of the label should be touching the point. For points with an * extent, like columns, the alignments also dictates how to align it inside * the box, as given with the inside option. Can be one of `left`, `center` * or `right`. */ align?: AlignValue; /** * Whether to allow data labels to overlap. To make the labels less * sensitive for overlapping, the dataLabels.padding can be set to 0. */ allowOverlap?: boolean; /** * The background color or gradient for the data label. */ backgroundColor?: (ColorString|GradientColorObject|PatternObject); /** * The border color for the data label. Defaults to `undefined`. */ borderColor?: ColorString; /** * The border radius in pixels for the data label. */ borderRadius?: number; /** * The border width in pixels for the data label. */ borderWidth?: number; /** * A class name for the data label. Particularly in styled mode, this can be * used to give each series' or point's data label unique styling. In * addition to this option, a default color class name is added so that we * can give the labels a contrast text shadow. */ className?: string; /** * The text color for the data labels. Defaults to `undefined`. For certain * series types, like column or map, the data labels can be drawn inside the * points. In this case the data label will be drawn with maximum contrast * by default. Additionally, it will be given a `text-outline` style with * the opposite color, to further increase the contrast. This can be * overridden by setting the `text-outline` style to `none` in the * `dataLabels.style` option. */ color?: ColorString; /** * Whether to hide data labels that are outside the plot area. By default, * the data label is moved inside the plot area according to the overflow * option. */ crop?: boolean; /** * (Highcharts, Highstock, Gantt) Whether to defer displaying the data * labels until the initial series animation has finished. */ defer?: boolean; /** * Enable or disable the data labels. */ enabled?: boolean; /** * A declarative filter to control of which data labels to display. The * declarative filter is designed for use when callback functions are not * available, like when the chart options require a pure JSON structure or * for use with graphical editors. For programmatic control, use the * `formatter` instead, and return `undefined` to disable a single data * label. */ filter?: DataLabelsFilterOptionsObject; /** * A format string for the data label. Available variables are the same as * for `formatter`. */ format?: string; /** * Callback JavaScript function to format the data label. Note that if a * `format` is defined, the format takes precedence and the formatter is * ignored. */ formatter?: DataLabelsFormatterCallbackFunction; /** * For points with an extent, like columns or map areas, whether to align * the data label inside the box or to the actual value point. Defaults to * `false` in most cases, `true` in stacked columns. */ inside?: boolean; /** * Format for points with the value of null. Works analogously to format. * `nullFormat` can be applied only to series which support displaying null * points. */ nullFormat?: (boolean|string); /** * Callback JavaScript function that defines formatting for points with the * value of null. Works analogously to formatter. `nullPointFormatter` can * be applied only to series which support displaying null points. */ nullFormatter?: DataLabelsFormatterCallbackFunction; /** * How to handle data labels that flow outside the plot area. The default is * `"justify"`, which aligns them inside the plot area. For columns and * bars, this means it will be moved inside the bar. To display data labels * outside the plot area, set `crop` to `false` and `overflow` to `"allow"`. */ overflow?: DataLabelsOverflowValue; /** * When either the `borderWidth` or the `backgroundColor` is set, this is * the padding within the box. */ padding?: number; /** * Text rotation in degrees. Note that due to a more complex structure, * backgrounds, borders and padding will be lost on a rotated data label. */ rotation?: number; /** * The shadow of the box. Works best with `borderWidth` or * `backgroundColor`. Since 2.3 the shadow can be an object configuration * containing `color`, `offsetX`, `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * The name of a symbol to use for the border around the label. Symbols are * predefined functions on the Renderer object. */ shape?: string; /** * Styles for the label. The default `color` setting is `"contrast"`, which * is a pseudo color that Highcharts picks up and applies the maximum * contrast to the underlying point item, for example the bar in a bar * chart. * * The `textOutline` is a pseudo property that applies an outline of the * given width with the given color, which by default is the maximum * contrast to the text. So a bright text color will result in a black text * outline for maximum readability on a mixed background. In some cases, * especially with grayscale text, the text outline doesn't work well, in * which cases it can be disabled by setting it to `"none"`. When `useHTML` * is true, the `textOutline` will not be picked up. In this, case, the same * effect can be acheived through the `text-shadow` CSS property. * * For some series types, where each point has an extent, like for example * tree maps, the data label may overflow the point. There are two * strategies for handling overflow. By default, the text will wrap to * multiple lines. The other strategy is to set `style.textOverflow` to * `ellipsis`, which will keep the text on one line plus it will break * inside long words. */ style?: CSSObject; /** * Whether to use HTML to render the labels. */ useHTML?: boolean; /** * The vertical alignment of a data label. Can be one of `top`, `middle` or * `bottom`. The default value depends on the data, for instance in a column * chart, the label is above positive values and below negative values. */ verticalAlign?: VerticalAlignValue; /** * The x position offset of the label relative to the point in pixels. */ x?: number; /** * The y position offset of the label relative to the point in pixels. */ y?: number; /** * The Z index of the data labels. The default Z index puts it above the * series. Use a Z index of 2 to display it behind the series. */ zIndex?: number; } /** * (Highcharts, Highstock, Highmaps, Gantt) The Data module provides a * simplified interface for adding data to a chart from sources like CVS, HTML * tables or grid views. See also the tutorial article on the Data module. * * It requires the `modules/data.js` file to be loaded. * * Please note that the default way of adding data in Highcharts, without the * need of a module, is through the series.data option. */ export interface DataOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) A callback function to modify * the CSV before parsing it. Return the modified string. */ beforeParse?: DataBeforeParseCallbackFunction; /** * (Highcharts, Highstock, Highmaps, Gantt) A two-dimensional array * representing the input data on tabular form. This input can be used when * the data is already parsed, for example from a grid view component. Each * cell can be a string or number. If not switchRowsAndColumns is set, the * columns are interpreted as series. */ columns?: Array<Array<any>>; /** * (Highcharts, Highstock, Highmaps, Gantt) A URL to a remote JSON dataset, * structured as a column array. Will be fetched when the chart is created * using Ajax. */ columnsURL?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) The callback that is evaluated * when the data is finished loading, optionally from an external source, * and parsed. The first argument passed is a finished chart options object, * containing the series. These options can be extended with additional * options and passed directly to the chart constructor. */ complete?: DataCompleteCallbackFunction; /** * (Highcharts, Highstock, Highmaps, Gantt) A comma delimited string to be * parsed. Related options are startRow, endRow, startColumn and endColumn * to delimit what part of the table is used. The lineDelimiter and * itemDelimiter options define the CSV delimiter formats. * * The built-in CSV parser doesn't support all flavours of CSV, so in some * cases it may be necessary to use an external CSV parser. See this example * of parsing CSV through the MIT licensed Papa Parse library. */ csv?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) An URL to a remote CSV dataset. * Will be fetched when the chart is created using Ajax. */ csvURL?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Sets the refresh rate for data * polling when importing remote dataset by setting data.csvURL, * data.rowsURL, data.columnsURL, or data.googleSpreadsheetKey. * * Note that polling must be enabled by setting data.enablePolling to true. * * The value is the number of seconds between pollings. It cannot be set to * less than 1 second. */ dataRefreshRate?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) Which of the predefined date * formats in Date.prototype.dateFormats to use to parse date values. * Defaults to a best guess based on what format gives valid and ordered * dates. Valid options include: `YYYY/mm/dd`, `dd/mm/YYYY`, `mm/dd/YYYY`, * `dd/mm/YY`, `mm/dd/YY`. */ dateFormat?: OptionsDateFormatValue; /** * (Highcharts, Highstock, Highmaps, Gantt) The decimal point used for * parsing numbers in the CSV. * * If both this and data.delimiter is set to `undefined`, the parser will * attempt to deduce the decimal point automatically. */ decimalPoint?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Enables automatic refetching of * remote datasets every _n_ seconds (defined by setting * data.dataRefreshRate). * * Only works when either data.csvURL, data.rowsURL, data.columnsURL, or * data.googleSpreadsheetKey. */ enablePolling?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) In tabular input data, the last * column (indexed by 0) to use. Defaults to the last column containing * data. */ endColumn?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) In tabular input data, the last * row (indexed by 0) to use. Defaults to the last row containing data. */ endRow?: number; /** * (Highcharts, Highstock, Gantt) Whether to use the first row in the data * set as series names. */ firstRowAsNames?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) The key for a Google Spreadsheet * to load. See general information on GS. */ googleSpreadsheetKey?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) The Google Spreadsheet worksheet * to use in combination with googleSpreadsheetKey. The available id's from * your sheet can be read from * `https://spreadsheets.google.com/feeds/worksheets/{key}/public/basic`. */ googleSpreadsheetWorksheet?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Item or cell delimiter for * parsing CSV. Defaults to the tab character `\t` if a tab character is * found in the CSV string, if not it defaults to `,`. * * If this is set to false or undefined, the parser will attempt to deduce * the delimiter automatically. */ itemDelimiter?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Line delimiter for parsing CSV. */ lineDelimiter?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) A callback function to access * the parsed columns, the two-dimentional input data array directly, before * they are interpreted into series data and categories. Return `false` to * stop completion, or call `this.complete()` to continue async. */ parsed?: DataParsedCallbackFunction; /** * (Highcharts, Highstock, Highmaps, Gantt) A callback function to parse * string representations of dates into JavaScript timestamps. Should return * an integer timestamp on success. */ parseDate?: DataParseDateCallbackFunction; /** * (Highcharts, Highstock, Highmaps, Gantt) The same as the columns input * option, but defining rows intead of columns. */ rows?: Array<Array<any>>; /** * (Highcharts, Highstock, Highmaps, Gantt) A URL to a remote JSON dataset, * structured as a row array. Will be fetched when the chart is created * using Ajax. */ rowsURL?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) An array containing dictionaries * for each series. A dictionary exists of Point property names as the key * and the CSV column index as the value. */ seriesMapping?: Array<Dictionary<number>>; /** * (Highcharts, Highstock, Highmaps, Gantt) In tabular input data, the first * column (indexed by 0) to use. */ startColumn?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) In tabular input data, the first * row (indexed by 0) to use. */ startRow?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) Switch rows and columns of the * input data, so that `this.columns` effectively becomes the rows of the * data set, and the rows are interpreted as series. */ switchRowsAndColumns?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) An HTML table or the id of such * to be parsed as input data. Related options are `startRow`, `endRow`, * `startColumn` and `endColumn` to delimit what part of the table is used. */ table?: (string|HTMLElement); } /** * Generic dictionary in TypeScript notation. */ export interface Dictionary<T> { [key: string]: T; } /** * (Highcharts, Highmaps) Additional styles to apply to the data label of a * point that has drilldown data. By default it is underlined and blue to invite * to interaction. * * In styled mode, active data label styles can be applied with the * `.highcharts-drilldown-data-label` class. */ export interface DrilldownActiveDataLabelStyleOptions { color?: string; cursor?: string; fontWeight?: string; textDecoration?: string; } /** * (Highcharts, Highmaps) Options for the drill up button that appears when * drilling down on a series. The text for the button is defined in * lang.drillUpText. */ export interface DrilldownDrillUpButtonOptions { /** * (Highcharts, Highmaps) Positioning options for the button within the * `relativeTo` box. Available properties are `x`, `y`, `align` and * `verticalAlign`. */ position?: (AlignObject|DrilldownDrillUpButtonPositionOptions); /** * (Highcharts, Highmaps) What box to align the button to. Can be either * `plotBox` or `spacingBox`. */ relativeTo?: ButtonRelativeToValue; /** * (Highcharts, Highmaps) A collection of attributes for the button. The * object takes SVG attributes like `fill`, `stroke`, `stroke-width` or `r`, * the border radius. The theme also supports `style`, a collection of CSS * properties for the text. Equivalent attributes for the hover state are * given in `theme.states.hover`. * * In styled mode, drill-up button styles can be applied with the * `.highcharts-drillup-button` class. */ theme?: object; } /** * (Highcharts, Highmaps) Positioning options for the button within the * `relativeTo` box. Available properties are `x`, `y`, `align` and * `verticalAlign`. */ export interface DrilldownDrillUpButtonPositionOptions { /** * (Highcharts, Highmaps) Horizontal alignment. */ align?: AlignValue; /** * (Highcharts, Highmaps) Vertical alignment of the button. */ verticalAlign?: VerticalAlignValue; /** * (Highcharts, Highmaps) The X offset of the button. */ x?: number; /** * (Highcharts, Highmaps) The Y offset of the button. */ y?: number; } /** * The event arguments when a drilldown point is clicked. */ export interface DrilldownEventObject { /** * If a category label was clicked, which index. */ category?: number; /** * The original browser event (usually click) that triggered the drilldown. */ originalEvent?: Event; /** * The originating point. */ point: Point; /** * If a category label was clicked, this array holds all points corresponing * to the category. Otherwise it is set to false. */ points?: (boolean|Array<Point>); /** * Prevents the default behaviour of the event. */ preventDefault: Function; /** * Options for the new series. If the event is utilized for async drilldown, * the seriesOptions are not added, but rather loaded async. */ seriesOptions?: SeriesOptionsType; /** * The event target. */ target: Chart; /** * The event type. */ type: "drilldown"; } /** * (Highcharts, Highstock, Highmaps) Options for drill down, the concept of * inspecting increasingly high resolution data through clicking on chart items * like columns or pie slices. * * The drilldown feature requires the drilldown.js file to be loaded, found in * the modules directory of the download package, or online at * code.highcharts.com/modules/drilldown.js. */ export interface DrilldownOptions { /** * (Highcharts, Highmaps) Additional styles to apply to the X axis label for * a point that has drilldown data. By default it is underlined and blue to * invite to interaction. * * In styled mode, active label styles can be set with the * `.highcharts-drilldown-axis-label` class. */ activeAxisLabelStyle?: CSSObject; /** * (Highcharts, Highmaps) Additional styles to apply to the data label of a * point that has drilldown data. By default it is underlined and blue to * invite to interaction. * * In styled mode, active data label styles can be applied with the * `.highcharts-drilldown-data-label` class. */ activeDataLabelStyle?: (CSSObject|DrilldownActiveDataLabelStyleOptions); /** * (Highcharts) When this option is false, clicking a single point will * drill down all points in the same category, equivalent to clicking the X * axis label. */ allowPointDrilldown?: boolean; /** * (Highcharts, Highmaps) Set the animation for all drilldown animations. * Animation of a drilldown occurs when drilling between a column point and * a column series, or a pie slice and a full pie series. Drilldown can * still be used between series and points of different types, but animation * will not occur. * * The animation can either be set as a boolean or a configuration object. * If `true`, it will use the 'swing' jQuery easing and a duration of 500 * ms. If used as a configuration object, the following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: A string reference to an easing function set on the `Math` * object. See the easing demo. */ animation?: (boolean|AnimationOptionsObject); /** * (Highcharts, Highmaps) Options for the drill up button that appears when * drilling down on a series. The text for the button is defined in * lang.drillUpText. */ drillUpButton?: DrilldownDrillUpButtonOptions; /** * (Highcharts, Highmaps) An array of series configurations for the drill * down. Each series configuration uses the same syntax as the series option * set. These drilldown series are hidden by default. The drilldown series * is linked to the parent series' point by its `id`. */ series?: Array<SeriesOptionsType>; } /** * The event arguments when all the series have been drilled up. */ export interface DrillupAllEventObject { /** * Prevents the default behaviour of the event. */ preventDefault: Function; /** * The event target. */ target: Chart; /** * The event type. */ type: "drillupall"; } /** * The event arguments when drilling up from a drilldown series. */ export interface DrillupEventObject { /** * Prevents the default behaviour of the event. */ preventDefault: Function; /** * Options for the new series. */ seriesOptions?: SeriesOptionsType; /** * The event target. */ target: Chart; /** * The event type. */ type: "drillup"; } /** * The event options for adding function callback. */ export interface EventOptionsObject { /** * The order the event handler should be called. This opens for having one * handler be called before another, independent of in which order they were * added. */ order: number; } /** * (Highcharts, Highstock, Highmaps, Gantt) Accessibility options for the * exporting menu. Requires the Accessibility module. */ export interface ExportingAccessibilityOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Enable accessibility support for * the export menu. */ enabled?: any; } /** * (Highcharts, Highstock, Highmaps, Gantt) Options for the export button. * * In styled mode, export button styles can be applied with the * `.highcharts-contextbutton` class. */ export interface ExportingButtonsContextButtonOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) This option is deprecated, use * titleKey instead. */ _titleKey?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) The class name of the context * button. */ className?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to enable buttons. */ enabled?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) The class name of the menu * appearing from the button. */ menuClassName?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) A collection of strings pointing * to config options for the menu items. The config options are defined in * the `menuItemDefinitions` option. * * By default, there is the "View in full screen" and "Print" menu items, * plus one menu item for each of the available export types. */ menuItems?: Array<string>; /** * (Highcharts, Highstock, Highmaps, Gantt) A click handler callback to use * on the button directly instead of the popup menu. */ onclick?: Function; /** * (Highcharts, Highstock, Highmaps, Gantt) The symbol for the button. * Points to a definition function in the `Highcharts.Renderer.symbols` * collection. The default `exportIcon` function is part of the exporting * module. Possible values are "circle", "square", "diamond", "triangle", * "triangle-down", "menu", "menuball" or custom shape. */ symbol?: ("menu"|"menuball"|"exportIcon"|string|SymbolKeyValue); /** * (Highcharts, Highstock, Highmaps, Gantt) See * navigation.buttonOptions.symbolFill. */ symbolFill?: ColorString; /** * (Highcharts, Highstock, Highmaps, Gantt) The color of the symbol's stroke * or line. */ symbolStroke?: ColorString; /** * (Highcharts, Highstock, Highmaps, Gantt) The pixel stroke width of the * symbol on the button. */ symbolStrokeWidth?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) A text string to add to the * individual button. */ text?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) A configuration object for the * button theme. The object accepts SVG properties like `stroke-width`, * `stroke` and `fill`. Tri-state button styles are supported by the * `states.hover` and `states.select` objects. */ theme?: ExportingButtonsContextButtonThemeOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) The key to a lang option setting * that is used for the button's title tooltip. When the key is * `contextButtonTitle`, it refers to lang.contextButtonTitle that defaults * to "Chart context menu". */ titleKey?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) The horizontal position of the * button relative to the `align` option. */ x?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The vertical offset of the * button's position relative to its `verticalAlign`. */ y?: number; } /** * (Highcharts, Highstock, Highmaps, Gantt) A configuration object for the * button theme. The object accepts SVG properties like `stroke-width`, `stroke` * and `fill`. Tri-state button styles are supported by the `states.hover` and * `states.select` objects. */ export interface ExportingButtonsContextButtonThemeOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) The default fill exists only to * capture hover events. */ fill?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Highmaps, Gantt) Padding for the button. */ padding?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) Default stroke for the buttons. */ stroke?: ColorString; } /** * (Highcharts, Highstock, Highmaps, Gantt) Options for the export related * buttons, print and export. In addition to the default buttons listed here, * custom buttons can be added. See navigation.buttonOptions for general * options. */ export interface ExportingButtonsOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Options for the export button. * * In styled mode, export button styles can be applied with the * `.highcharts-contextbutton` class. */ contextButton?: ExportingButtonsContextButtonOptions; } /** * (Highcharts, Highstock, Highmaps, Gantt) Options for exporting data to CSV or * ExCel, or displaying the data in a HTML table or a JavaScript structure. * Requires the `export-data.js` module. This module adds data export options to * the export menu and provides functions like `Chart.getCSV`, `Chart.getTable`, * `Chart.getDataRows` and `Chart.viewData`. * * The XLS converter is limited and only creates a HTML string that is passed * for download, which works but creates a warning before opening. The * workaround for this is to use a third party XLSX converter, as demonstrated * in the sample below. */ export interface ExportingCsvOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Formatter callback for the * column headers. Parameters are: * * - `item` - The series or axis object) * * - `key` - The point key, for example y or z * * - `keyLength` - The amount of value keys for this item, for example a * range series has the keys `low` and `high` so the key length is 2. * * If useMultiLevelHeaders is true, columnHeaderFormatter by default returns * an object with columnTitle and topLevelColumnTitle for each key. Columns * with the same topLevelColumnTitle have their titles merged into a single * cell with colspan for table/Excel export. * * If `useMultiLevelHeaders` is false, or for CSV export, it returns the * series name, followed by the key if there is more than one key. * * For the axis it returns the axis title or "Category" or "DateTime" by * default. * * Return `false` to use Highcharts' proposed header. */ columnHeaderFormatter?: (Function|null); /** * (Highcharts, Highstock, Highmaps, Gantt) Which date format to use for * exported dates on a datetime X axis. See `Highcharts.dateFormat`. */ dateFormat?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Which decimal point to use for * exported CSV. Defaults to the same as the browser locale, typically `.` * (English) or `,` (German, French etc). */ decimalPoint?: (string|null); /** * (Highcharts, Highstock, Highmaps, Gantt) The item delimiter in the * exported data. Use `;` for direct exporting to Excel. Defaults to a best * guess based on the browser locale. If the locale _decimal point_ is `,`, * the `itemDelimiter` defaults to `;`, otherwise the `itemDelimiter` * defaults to `,`. */ itemDelimiter?: (string|null); /** * (Highcharts, Highstock, Highmaps, Gantt) The line delimiter in the * exported data, defaults to a newline. */ lineDelimiter?: string; } /** * Definition for a menu item in the context menu. */ export interface ExportingMenuObject { /** * The click handler for the menu item. */ onclick?: Function; /** * Indicates a separator line instead of an item. */ separator?: boolean; /** * The text for the menu item. */ text?: string; /** * If internationalization is required, the key to a language string. */ textKey?: string; } /** * (Highcharts, Highstock, Highmaps, Gantt) Options for the exporting module. * For an overview on the matter, see the docs. */ export interface ExportingOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Accessibility options for the * exporting menu. Requires the Accessibility module. */ accessibility?: (object|ExportingAccessibilityOptions); /** * (Highcharts, Highstock, Highmaps, Gantt) Experimental setting to allow * HTML inside the chart (added through the `useHTML` options), directly in * the exported image. This allows you to preserve complicated HTML * structures like tables or bi-directional text in exported charts. * * Disclaimer: The HTML is rendered in a `foreignObject` tag in the * generated SVG. The official export server is based on PhantomJS, which * supports this, but other SVG clients, like Batik, does not support it. * This also applies to downloaded SVG that you want to open in a desktop * client. */ allowHTML?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Options for the export related * buttons, print and export. In addition to the default buttons listed * here, custom buttons can be added. See navigation.buttonOptions for * general options. */ buttons?: (ExportingButtonsOptions|Dictionary<ExportingButtonsContextButtonOptions>); /** * (Highcharts, Highstock, Highmaps, Gantt) Additional chart options to be * merged into the chart before exporting to an image format. This does not * apply to printing the chart via the export menu. * * For example, a common use case is to add data labels to improve * readability of the exported chart, or to add a printer-friendly color * scheme to exported PDFs. */ chartOptions?: Options; /** * (Highcharts, Highstock, Highmaps, Gantt) Options for exporting data to * CSV or ExCel, or displaying the data in a HTML table or a JavaScript * structure. Requires the `export-data.js` module. This module adds data * export options to the export menu and provides functions like * `Chart.getCSV`, `Chart.getTable`, `Chart.getDataRows` and * `Chart.viewData`. * * The XLS converter is limited and only creates a HTML string that is * passed for download, which works but creates a warning before opening. * The workaround for this is to use a third party XLSX converter, as * demonstrated in the sample below. */ csv?: ExportingCsvOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to enable the exporting * module. Disabling the module will hide the context button, but API * methods will still be available. */ enabled?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Function to call if the * offline-exporting module fails to export a chart on the client side, and * fallbackToExportServer is disabled. If left undefined, an exception is * thrown instead. Receives two parameters, the exporting options, and the * error from the module. */ error?: ExportingErrorCallbackFunction; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether or not to fall back to * the export server if the offline-exporting module is unable to export the * chart on the client side. This happens for certain browsers, and certain * features (e.g. allowHTML), depending on the image type exporting to. For * very complex charts, it is possible that export can fail in browsers that * don't support Blob objects, due to data URL length limits. It is * recommended to define the exporting.error handler if disabling fallback, * in order to notify users in case export fails. */ fallbackToExportServer?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) The filename, without extension, * to use for the exported chart. */ filename?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) An object containing additional * key value data for the POST form that sends the SVG to the export server. * For example, a `target` can be set to make sure the generated image is * received in another frame, or a custom `enctype` or `encoding` can be * set. */ formAttributes?: any; /** * (Highcharts, Highstock, Highmaps, Gantt) Path where Highcharts will look * for export module dependencies to load on demand if they don't already * exist on `window`. Should currently point to location of CanVG library, * RGBColor.js, jsPDF and svg2pdf.js, required for client side export in * certain browsers. */ libURL?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) An object consisting of * definitions for the menu items in the context menu. Each key value pair * has a `key` that is referenced in the menuItems setting, and a `value`, * which is an object with the following properties: * * - **onclick:** The click handler for the menu item * * - **text:** The text for the menu item * * - **textKey:** If internationalization is required, the key to a language * string */ menuItemDefinitions?: Dictionary<ExportingMenuObject>; /** * (Highcharts, Highstock, Highmaps, Gantt) When printing the chart from the * menu item in the burger menu, if the on-screen chart exceeds this width, * it is resized. After printing or cancelled, it is restored. The default * width makes the chart fit into typical paper format. Note that this does * not affect the chart when printing the web page as a whole. */ printMaxWidth?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) Defines the scale or zoom factor * for the exported image compared to the on-screen display. While for * instance a 600px wide chart may look good on a website, it will look bad * in print. The default scale of 2 makes this chart export to a 1200px PNG * or JPG. */ scale?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) Export-data module required. * Show a HTML table below the chart with the chart's current data. */ showTable?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Analogous to sourceWidth. */ sourceHeight?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The width of the original chart * when exported, unless an explicit chart.width is set, or a pixel width is * set on the container. The width exported raster image is then multiplied * by scale. */ sourceWidth?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) Export-data module required. * Caption for the data table. Same as chart title by default. Set to * `false` to disable. */ tableCaption?: (boolean|string); /** * (Highcharts, Highstock, Highmaps, Gantt) Default MIME type for exporting * if `chart.exportChart()` is called without specifying a `type` option. * Possible values are `image/png`, `image/jpeg`, `application/pdf` and * `image/svg+xml`. */ type?: ExportingMimeTypeValue; /** * (Highcharts, Highstock, Highmaps, Gantt) The URL for the server module * converting the SVG string to an image format. By default this points to * Highchart's free web service. */ url?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Export-data module required. Use * multi level headers in data table. If csv.columnHeaderFormatter is * defined, it has to return objects in order for multi level headers to * work. */ useMultiLevelHeaders?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Export-data module required. If * using multi level table headers, use rowspans for headers that have only * one level. */ useRowspanHeaders?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) The pixel width of charts * exported to PNG or JPG. As of Highcharts 3.0, the default pixel width is * a function of the chart.width or exporting.sourceWidth and the * exporting.scale. */ width?: number; } /** * The returned object literal from the Highcharts.Axis#getExtremes function. */ export interface ExtremesObject { /** * The maximum value of the axis' associated series. */ dataMax: number; /** * The minimum value of the axis' associated series. */ dataMin: number; /** * The maximum axis value, either automatic or set manually. If the `max` * option is not set, `maxPadding` is 0 and `endOnTick` is false, this value * will be the same as `dataMax`. */ max: number; /** * The minimum axis value, either automatic or set manually. If the `min` * option is not set, `minPadding` is 0 and `startOnTick` is false, this * value will be the same as `dataMin`. */ min: number; /** * The user defined maximum, either from the `max` option or from a zoom or * `setExtremes` action. */ userMax: number; /** * The user defined minimum, either from the `min` option or from a zoom or * `setExtremes` action. */ userMin: number; } /** * The font metrics. */ export interface FontMetricsObject { /** * The baseline relative to the top of the box. */ b: number; /** * The font size. */ f: number; /** * The line height. */ h: number; } export interface GlobalOptions { /** * (Highcharts, Highmaps) _Canvg rendering for Android 2.x is removed as of * Highcharts 5.0\. Use the libURL option to configure exporting._ * * The URL to the additional file to lazy load for Android 2.x devices. * These devices don't support SVG, so we download a helper file that * contains canvg, its dependency rbcolor, and our own CanVG Renderer class. * To avoid hotlinking to our site, you can install canvas-tools.js on your * own server and change this option accordingly. */ canvasToolsURL?: string; /** * (Highcharts, Highstock) This option is deprecated since v6.0.5. Instead, * use time.Date that supports individual time settings per chart. */ Date?: Function; /** * (Highcharts, Highstock) This option is deprecated since v6.0.5. Instead, * use time.getTimezoneOffset that supports individual time settings per * chart. */ getTimezoneOffset?: Function; /** * (Highcharts, Highstock) This option is deprecated since v6.0.5. Instead, * use time.timezone that supports individual time settings per chart. */ timezone?: string; /** * (Highcharts, Highstock) This option is deprecated since v6.0.5. Instead, * use time.timezoneOffset that supports individual time settings per chart. */ timezoneOffset?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) This option is deprecated since * v6.0.5. Instead, use time.useUTC that supports individual time settings * per chart. */ useUTC?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Path to the pattern image * required by VML browsers in order to draw radial gradients. */ VMLRadialGradientURL?: string; } /** * Gradient options instead of a solid color. */ export interface GradientColorObject { /** * Holds an object that defines the start position and the end position * relative to the shape. */ linearGradient?: LinearGradientColorObject; /** * Holds an object that defines the center position and the radius. */ radialGradient?: RadialGradientColorObject; /** * The first item in each tuple is the position in the gradient, where 0 is * the start of the gradient and 1 is the end of the gradient. Multiple * stops can be applied. The second item is the color for each stop. This * color can also be given in the rgba format. */ stops?: Array<[number, ColorString]>; } /** * Containing the position of a box that should be avoided by labels. */ export interface LabelIntersectBoxObject { bottom: number; left: number; right: number; top: number; } /** * (Highcharts, Highstock, Highmaps, Gantt) An HTML label that can be positioned * anywhere in the chart area. */ export interface LabelsItemsOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Inner HTML or text for the * label. */ html?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) CSS styles for each label. To * position the label, use left and top like this: * * (see online documentation for example) */ style?: CSSObject; } /** * (Highcharts, Highstock, Highmaps, Gantt) HTML labels that can be positioned * anywhere in the chart area. */ export interface LabelsOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) An HTML label that can be * positioned anywhere in the chart area. */ items?: Array<LabelsItemsOptions>; /** * (Highcharts, Highstock, Highmaps, Gantt) Shared CSS styles for all * labels. */ style?: CSSObject; } /** * (Highcharts, Highstock, Highmaps, Gantt) Default announcement for new data in * charts. If addPoint or addSeries is used, and only one series/point is added, * the `newPointAnnounce` and `newSeriesAnnounce` strings are used. The * `...Single` versions will be used if there is only one chart on the page, and * the `...Multiple` versions will be used if there are multiple charts on the * page. For all other new data events, the `newDataAnnounce` string will be * used. */ export interface LangAccessibilityAnnounceNewDataOptions { newDataAnnounce?: string; newPointAnnounceMultiple?: string; newPointAnnounceSingle?: string; newSeriesAnnounceMultiple?: string; newSeriesAnnounceSingle?: string; } /** * (Highcharts, Highstock, Highmaps, Gantt) Axis description format strings. */ export interface LangAccessibilityAxisOptions { rangeCategories?: string; rangeFromTo?: string; timeRangeDays?: string; timeRangeHours?: string; timeRangeMinutes?: string; timeRangeSeconds?: string; xAxisDescriptionPlural?: string; xAxisDescriptionSingular?: string; yAxisDescriptionPlural?: string; yAxisDescriptionSingular?: string; } /** * (Highcharts, Highstock, Highmaps, Gantt) Chart type description strings. This * is added to the chart information region. * * If there is only a single series type used in the chart, we use the format * string for the series type, or default if missing. There is one format string * for cases where there is only a single series in the chart, and one for * multiple series of the same type. */ export interface LangAccessibilityChartTypesOptions { barMultiple?: string; barSingle?: string; boxplotMultiple?: string; boxplotSingle?: string; bubbleMultiple?: string; bubbleSingle?: string; columnMultiple?: string; columnSingle?: string; combinationChart?: string; defaultMultiple?: string; defaultSingle?: string; emptyChart?: string; lineMultiple?: string; lineSingle?: string; mapTypeDescription?: string; pieMultiple?: string; pieSingle?: string; scatterMultiple?: string; scatterSingle?: string; splineMultiple?: string; splineSingle?: string; unknownMap?: string; } /** * (Highcharts, Highstock, Highmaps, Gantt) Exporting menu format strings for * accessibility module. */ export interface LangAccessibilityExportingOptions { chartMenuLabel?: string; exportRegionLabel?: string; menuButtonLabel?: string; } /** * (Highcharts, Highstock, Highmaps, Gantt) Configure the accessibility strings * in the chart. Requires the accessibility module to be loaded. For a * description of the module and information on its features, see Highcharts * Accessibility. * * For more dynamic control over the accessibility functionality, see * accessibility.pointDescriptionFormatter, * accessibility.seriesDescriptionFormatter, and * accessibility.screenReaderSectionFormatter. */ export interface LangAccessibilityOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Default announcement for new * data in charts. If addPoint or addSeries is used, and only one * series/point is added, the `newPointAnnounce` and `newSeriesAnnounce` * strings are used. The `...Single` versions will be used if there is only * one chart on the page, and the `...Multiple` versions will be used if * there are multiple charts on the page. For all other new data events, the * `newDataAnnounce` string will be used. */ announceNewData?: LangAccessibilityAnnounceNewDataOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) Axis description format strings. */ axis?: LangAccessibilityAxisOptions; chartContainerLabel?: string; chartHeading?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Chart type description strings. * This is added to the chart information region. * * If there is only a single series type used in the chart, we use the * format string for the series type, or default if missing. There is one * format string for cases where there is only a single series in the chart, * and one for multiple series of the same type. */ chartTypes?: LangAccessibilityChartTypesOptions; defaultChartTitle?: string; drillUpButton?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Exporting menu format strings * for accessibility module. */ exporting?: LangAccessibilityExportingOptions; legendItem?: string; legendLabel?: string; mapZoomIn?: string; mapZoomOut?: string; rangeSelectorButton?: string; rangeSelectorMaxInput?: string; rangeSelectorMinInput?: string; resetZoomButton?: string; screenReaderRegionLabel?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Lang configuration for different * series types. For more dynamic control over the series element * descriptions, see accessibility.seriesDescriptionFormatter. */ series?: LangAccessibilitySeriesOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) Descriptions of lesser known * series types. The relevant description is added to the screen reader * information region when these series types are used. */ seriesTypeDescriptions?: LangAccessibilitySeriesTypeDescriptionsOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) Label for the end of the chart. * Announced by screen readers. */ svgContainerEnd?: string; svgContainerLabel?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Title element text for the chart * SVG element. Leave this empty to disable adding the title element. * Browsers will display this content when hovering over elements in the * chart. Assistive technology may use this element to label the chart. */ svgContainerTitle?: string; tableSummary?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Thousands separator to use when * formatting numbers for screen readers. Note that many screen readers will * not handle space as a thousands separator, and will consider "11 700" as * two numbers. * * Set to `null` to use the separator defined in lang.thousandsSep. */ thousandsSep?: string; viewAsDataTable?: string; } /** * (Highcharts, Highstock, Highmaps, Gantt) Lang configuration for different * series types. For more dynamic control over the series element descriptions, * see accessibility.seriesDescriptionFormatter. */ export interface LangAccessibilitySeriesOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) User supplied description text. * This is added after the main summary if present. */ description?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Lang configuration for the * series main summary. Each series type has two modes: * * 1. This series type is the only series type used in the chart * * 2. This is a combination chart with multiple series types * * If a definition does not exist for the specific series type and mode, the * 'default' lang definitions are used. */ summary?: LangAccessibilitySeriesSummaryOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) xAxis description for series if * there are multiple xAxes in the chart. */ xAxisDescription?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) yAxis description for series if * there are multiple yAxes in the chart. */ yAxisDescription?: string; } /** * (Highcharts, Highstock, Highmaps, Gantt) Lang configuration for the series * main summary. Each series type has two modes: * * 1. This series type is the only series type used in the chart * * 2. This is a combination chart with multiple series types * * If a definition does not exist for the specific series type and mode, the * 'default' lang definitions are used. */ export interface LangAccessibilitySeriesSummaryOptions { bar?: string; barCombination?: string; boxplot?: string; boxplotCombination?: string; bubble?: string; bubbleCombination?: string; column?: string; columnCombination?: string; default?: string; defaultCombination?: string; line?: string; lineCombination?: string; map?: string; mapbubble?: string; mapbubbleCombination?: string; mapCombination?: string; mapline?: string; maplineCombination?: string; pie?: string; pieCombination?: string; scatter?: string; scatterCombination?: string; spline?: string; splineCombination?: string; } /** * (Highcharts, Highstock, Highmaps, Gantt) Descriptions of lesser known series * types. The relevant description is added to the screen reader information * region when these series types are used. */ export interface LangAccessibilitySeriesTypeDescriptionsOptions { arearange?: string; areasplinerange?: string; boxplot?: string; bubble?: string; columnrange?: string; errorbar?: string; funnel?: string; pyramid?: string; waterfall?: string; } /** * (Highcharts, Highstock) Configure the Popup strings in the chart. Requires * the `annotations.js` or `annotations-advanced.src.js` module to be loaded. */ export interface LangNavigationOptions { /** * (Highcharts, Highstock) Translations for all field names used in popup. */ popup?: (object|LangNavigationPopupOptions); } /** * (Highcharts, Highstock) Translations for all field names used in popup. */ export interface LangNavigationPopupOptions { addButton?: string; arrowLine?: string; arrowRay?: string; arrowSegment?: string; background?: string; backgroundColor?: string; backgroundColors?: string; borderColor?: string; borderRadius?: string; borderWidth?: string; circle?: string; color?: string; connector?: string; crooked3?: string; crooked5?: string; crosshairX?: string; crosshairY?: string; editButton?: string; elliott3?: string; elliott5?: string; fibonacci?: string; fill?: string; flags?: string; fontSize?: string; format?: string; height?: string; horizontalLine?: string; infinityLine?: string; innerBackground?: string; label?: string; labelOptions?: string; labels?: string; line?: string; lines?: string; measure?: string; measureX?: string; measureXY?: string; measureY?: string; name?: string; outerBackground?: string; padding?: string; parallelChannel?: string; pitchfork?: string; ray?: string; rectangle?: string; removeButton?: string; saveButton?: string; segment?: string; series?: string; shapeOptions?: string; shapes?: string; simpleShapes?: string; stroke?: string; strokeWidth?: string; style?: string; title?: string; tunnel?: string; typeOptions?: string; verticalArrow?: string; verticalCounter?: string; verticalLabel?: string; verticalLine?: string; volume?: string; } /** * (Highcharts, Highstock, Highmaps, Gantt) Language object. The language object * is global and it can't be set on each chart initialization. Instead, use * `Highcharts.setOptions` to set it before any chart is initialized. * * (see online documentation for example) */ export interface LangOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Configure the accessibility * strings in the chart. Requires the accessibility module to be loaded. For * a description of the module and information on its features, see * Highcharts Accessibility. * * For more dynamic control over the accessibility functionality, see * accessibility.pointDescriptionFormatter, * accessibility.seriesDescriptionFormatter, and * accessibility.screenReaderSectionFormatter. */ accessibility?: LangAccessibilityOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) Exporting module menu. The * tooltip title for the context menu holding print and export menu items. */ contextButtonTitle?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) The default decimal point used * in the `Highcharts.numberFormat` method unless otherwise specified in the * function arguments. */ decimalPoint?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Export-data module only. The * text for the menu item. */ downloadCSV?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Exporting module only. The text * for the JPEG download menu item. */ downloadJPEG?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Exporting module only. The text * for the PDF download menu item. */ downloadPDF?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Exporting module only. The text * for the PNG download menu item. */ downloadPNG?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Exporting module only. The text * for the SVG download menu item. */ downloadSVG?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Export-data module only. The * text for the menu item. */ downloadXLS?: string; /** * (Highcharts, Highmaps) The text for the button that appears when drilling * down, linking back to the parent series. The parent series' name is * inserted for `{series.name}`. */ drillUpText?: string; /** * (Highcharts, Highstock) What to show in a date field for invalid dates. * Defaults to an empty string. */ invalidDate?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) The loading text that appears * when the chart is set into the loading state following a call to * `chart.showLoading`. */ loading?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) An array containing the months * names. Corresponds to the `%B` format in `Highcharts.dateFormat()`. */ months?: Array<string>; /** * (Highcharts, Highstock) Configure the Popup strings in the chart. * Requires the `annotations.js` or `annotations-advanced.src.js` module to * be loaded. */ navigation?: (object|LangNavigationOptions); /** * (Highcharts, Highstock) The text to display when the chart contains no * data. Requires the no-data module, see noData. */ noData?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) The magnitude of numericSymbols * replacements. Use 10000 for Japanese, Korean and various Chinese locales, * which use symbols for 10^4, 10^8 and 10^12. */ numericSymbolMagnitude?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) Metric prefixes used to shorten * high numbers in axis labels. Replacing any of the positions with `null` * causes the full number to be written. Setting `numericSymbols` to `null` * disables shortening altogether. */ numericSymbols?: Array<string>; /** * (Highcharts, Highstock, Highmaps, Gantt) Export-data module only. The * text for the menu item. */ openInCloud?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Exporting module only. The text * for the menu item to print the chart. */ printChart?: string; /** * (Highstock, Gantt) The text for the label for the "from" input box in the * range selector. */ rangeSelectorFrom?: string; /** * (Highstock, Gantt) The text for the label for the "to" input box in the * range selector. */ rangeSelectorTo?: string; /** * (Highstock, Gantt) The text for the label for the range selector buttons. */ rangeSelectorZoom?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) The text for the label appearing * when a chart is zoomed. */ resetZoom?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) The tooltip title for the label * appearing when a chart is zoomed. */ resetZoomTitle?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) An array containing the months * names in abbreviated form. Corresponds to the `%b` format in * `Highcharts.dateFormat()`. */ shortMonths?: Array<string>; /** * (Highcharts, Highstock, Highmaps, Gantt) Short week days, starting * Sunday. If not specified, Highcharts uses the first three letters of the * `lang.weekdays` option. */ shortWeekdays?: Array<string>; /** * (Highstock) Configure the stockTools GUI titles(hints) in the chart. * Requires the `stock-tools.js` module to be loaded. */ stockTools?: (object|LangStockToolsOptions); /** * (Highcharts, Highstock, Highmaps, Gantt) The default thousands separator * used in the `Highcharts.numberFormat` method unless otherwise specified * in the function arguments. Defaults to a single space character, which is * recommended in ISO 31-0 and works across Anglo-American and continental * European languages. */ thousandsSep?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Export-data module only. The * text for the menu item. */ viewData?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Exporting module only. View the * chart in full screen. */ viewFullscreen?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) An array containing the weekday * names. */ weekdays?: Array<string>; /** * (Highmaps) The title appearing on hovering the zoom in button. The text * itself defaults to "+" and can be changed in the button options. */ zoomIn?: string; /** * (Highmaps) The title appearing on hovering the zoom out button. The text * itself defaults to "-" and can be changed in the button options. */ zoomOut?: string; } export interface LangStockToolsGuiOptions { advanced?: string; arrowLine?: string; arrowRay?: string; arrowSegment?: string; circle?: string; crooked3?: string; crooked5?: string; crookedLines?: string; currentPriceIndicator?: string; elliott3?: string; elliott5?: string; fibonacci?: string; flagCirclepin?: string; flagDiamondpin?: string; flags?: string; flagSimplepin?: string; flagSquarepin?: string; fullScreen?: string; horizontalLine?: string; indicators?: string; infinityLine?: string; label?: string; line?: string; lines?: string; measure?: string; measureX?: string; measureXY?: string; measureY?: string; parallelChannel?: string; pitchfork?: string; ray?: string; rectangle?: string; saveChart?: string; segment?: string; simpleShapes?: string; toggleAnnotations?: string; typeCandlestick?: string; typeChange?: string; typeLine?: string; typeOHLC?: string; verticalArrow?: string; verticalCounter?: string; verticalLabel?: string; verticalLabels?: string; verticalLine?: string; zoomChange?: string; zoomX?: string; zoomXY?: string; zoomY?: string; } /** * (Highstock) Configure the stockTools GUI titles(hints) in the chart. Requires * the `stock-tools.js` module to be loaded. */ export interface LangStockToolsOptions { gui?: LangStockToolsGuiOptions; } /** * (Highcharts, Highstock, Highmaps, Gantt) Options for keyboard navigation for * the legend. */ export interface LegendAccessibilityKeyboardNavigationOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Enable keyboard navigation for * the legend. */ enabled?: any; } /** * (Highcharts, Highstock, Highmaps, Gantt) Accessibility options for the * legend. Requires the Accessibility module. */ export interface LegendAccessibilityOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Enable accessibility support for * the legend. */ enabled?: any; /** * (Highcharts, Highstock, Highmaps, Gantt) Options for keyboard navigation * for the legend. */ keyboardNavigation?: LegendAccessibilityKeyboardNavigationOptions; } /** * (Highcharts, Highstock, Highmaps) Options for the bubble legend labels. */ export interface LegendBubbleLegendLabelsOptions { /** * (Highcharts, Highstock, Highmaps) The alignment of the labels compared to * the bubble legend. Can be one of `left`, `center` or `right`. */ align?: AlignValue; /** * (Highcharts, Highstock, Highmaps) Whether to allow data labels to * overlap. */ allowOverlap?: boolean; /** * (Highcharts, Highstock, Highmaps) An additional class name to apply to * the bubble legend label graphical elements. This option does not replace * default class names of the graphical element. */ className?: string; /** * (Highcharts, Highstock, Highmaps) A format string for the bubble legend * labels. Available variables are the same as for `formatter`. */ format?: string; /** * (Highcharts, Highstock, Highmaps) Available `this` properties are: * * - `this.value`: The bubble value. * * - `this.radius`: The radius of the bubble range. * * - `this.center`: The center y position of the range. */ formatter?: FormatterCallbackFunction<BubbleLegendFormatterContextObject>; /** * (Highcharts, Highstock, Highmaps) CSS styles for the labels. */ style?: CSSObject; /** * (Highcharts, Highstock, Highmaps) The x position offset of the label * relative to the connector. */ x?: number; /** * (Highcharts, Highstock, Highmaps) The y position offset of the label * relative to the connector. */ y?: number; } /** * (Highcharts, Highstock, Highmaps) The bubble legend is an additional element * in legend which presents the scale of the bubble series. Individual bubble * ranges can be defined by user or calculated from series. In the case of * automatically calculated ranges, a 1px margin of error is permitted. Requires * `highcharts-more.js`. */ export interface LegendBubbleLegendOptions { /** * (Highcharts, Highstock, Highmaps) The color of the ranges borders, can be * also defined for an individual range. */ borderColor?: ColorString; /** * (Highcharts, Highstock, Highmaps) The width of the ranges borders in * pixels, can be also defined for an individual range. */ borderWidth?: number; /** * (Highcharts, Highstock, Highmaps) An additional class name to apply to * the bubble legend' circle graphical elements. This option does not * replace default class names of the graphical element. */ className?: string; /** * (Highcharts, Highstock, Highmaps) The main color of the bubble legend. * Applies to ranges, if individual color is not defined. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Highmaps) An additional class name to apply to * the bubble legend's connector graphical elements. This option does not * replace default class names of the graphical element. */ connectorClassName?: string; /** * (Highcharts, Highstock, Highmaps) The color of the connector, can be also * defined for an individual range. */ connectorColor?: ColorString; /** * (Highcharts, Highstock, Highmaps) The length of the connectors in pixels. * If labels are centered, the distance is reduced to 0. */ connectorDistance?: number; /** * (Highcharts, Highstock, Highmaps) The width of the connectors in pixels. */ connectorWidth?: number; /** * (Highcharts, Highstock, Highmaps) Enable or disable the bubble legend. */ enabled?: boolean; /** * (Highcharts, Highstock, Highmaps) Options for the bubble legend labels. */ labels?: LegendBubbleLegendLabelsOptions; /** * (Highcharts, Highstock, Highmaps) The position of the bubble legend in * the legend. */ legendIndex?: number; /** * (Highcharts, Highstock, Highmaps) Miximum bubble legend range size. If * values for ranges are not specified, the `minSize` and the `maxSize` are * calculated from bubble series. */ maxSize?: number; /** * (Highcharts, Highstock, Highmaps) Minimum bubble legend range size. If * values for ranges are not specified, the `minSize` and the `maxSize` are * calculated from bubble series. */ minSize?: number; /** * (Highcharts, Highstock, Highmaps) Options for specific range. One range * consists of bubble, label and connector. */ ranges?: Array<LegendBubbleLegendRangesOptions>; /** * (Highcharts, Highstock, Highmaps) Whether the bubble legend range value * should be represented by the area or the width of the bubble. The * default, area, corresponds best to the human perception of the size of * each bubble. */ sizeBy?: BubbleSizeByValue; /** * (Highcharts, Highstock, Highmaps) When this is true, the absolute value * of z determines the size of the bubble. This means that with the default * zThreshold of 0, a bubble of value -1 will have the same size as a bubble * of value 1, while a bubble of value 0 will have a smaller size according * to minSize. */ sizeByAbsoluteValue?: boolean; /** * (Highcharts, Highstock, Highmaps) Define the visual z index of the bubble * legend. */ zIndex?: number; /** * (Highcharts, Highstock, Highmaps) Ranges with with lower value than * zThreshold, are skipped. */ zThreshold?: number; } /** * (Highcharts, Highstock, Highmaps) Options for specific range. One range * consists of bubble, label and connector. */ export interface LegendBubbleLegendRangesOptions { /** * (Highcharts, Highstock, Highmaps) The color of the border for individual * range. */ borderColor?: ColorString; /** * (Highcharts, Highstock, Highmaps) The color of the bubble for individual * range. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Highmaps) The color of the connector for * individual range. */ connectorColor?: ColorString; /** * (Highcharts, Highstock, Highmaps) Range size value, similar to bubble Z * data. */ value?: any; } /** * (Highcharts, Highstock, Highmaps, Gantt) Default styling for the checkbox * next to a legend item when `showCheckbox` is true. */ export interface LegendItemCheckboxStyleOptions { height?: string; } /** * (Highcharts, Highstock, Highmaps, Gantt) Options for the paging or navigation * appearing when the legend is overflown. Navigation works well on screen, but * not in static exported images. One way of working around that is to increase * the chart height in export. */ export interface LegendNavigationOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) The color for the active up or * down arrow in the legend page navigation. */ activeColor?: ColorString; /** * (Highcharts, Highstock, Highmaps, Gantt) How to animate the pages when * navigating up or down. A value of `true` applies the default navigation * given in the `chart.animation` option. Additional options can be given as * an object containing values for easing and duration. */ animation?: (boolean|AnimationOptionsObject); /** * (Highcharts, Highstock, Highmaps, Gantt) The pixel size of the up and * down arrows in the legend paging navigation. */ arrowSize?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to enable the legend * navigation. In most cases, disabling the navigation results in an * unwanted overflow. * * See also the adapt chart to legend plugin for a solution to extend the * chart height to make room for the legend, optionally in exported charts * only. */ enabled?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) The color of the inactive up or * down arrow in the legend page navigation. . */ inactiveColor?: ColorString; /** * (Highcharts, Highstock, Highmaps, Gantt) Text styles for the legend page * navigation. */ style?: CSSObject; } /** * (Highcharts, Highstock, Highmaps, Gantt) The legend is a box containing a * symbol and name for each series item or point item in the chart. Each series * (or points in case of pie charts) is represented by a symbol and its name in * the legend. * * It is possible to override the symbol creator function and create custom * legend symbols. */ export interface LegendOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Accessibility options for the * legend. Requires the Accessibility module. */ accessibility?: (object|LegendAccessibilityOptions); /** * (Highcharts, Highstock, Highmaps, Gantt) The horizontal alignment of the * legend box within the chart area. Valid values are `left`, `center` and * `right`. * * In the case that the legend is aligned in a corner position, the `layout` * option will determine whether to place it above/below or on the side of * the plot area. */ align?: AlignValue; /** * (Highcharts, Highstock, Highmaps, Gantt) If the layout is `horizontal` * and the legend items span over two lines or more, whether to align the * items into vertical columns. Setting this to `false` makes room for more * items, but will look more messy. */ alignColumns?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) The background color of the * legend. */ backgroundColor?: ColorString; /** * (Highcharts, Highstock, Highmaps, Gantt) The color of the drawn border * around the legend. */ borderColor?: ColorString; /** * (Highcharts, Highstock, Highmaps, Gantt) The border corner radius of the * legend. */ borderRadius?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The width of the drawn border * around the legend. */ borderWidth?: number; /** * (Highcharts, Highstock, Highmaps) The bubble legend is an additional * element in legend which presents the scale of the bubble series. * Individual bubble ranges can be defined by user or calculated from * series. In the case of automatically calculated ranges, a 1px margin of * error is permitted. Requires `highcharts-more.js`. */ bubbleLegend?: LegendBubbleLegendOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) Enable or disable the legend. * There is also a series-specific option, showInLegend, that can hide the * series from the legend. In some series types this is `false` by default, * so it must set to `true` in order to show the legend for the series. */ enabled?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) When the legend is floating, the * plot area ignores it and is allowed to be placed below it. */ floating?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Default styling for the checkbox * next to a legend item when `showCheckbox` is true. */ itemCheckboxStyle?: (CSSObject|LegendItemCheckboxStyleOptions); /** * (Highcharts, Highstock, Highmaps, Gantt) In a legend with horizontal * layout, the itemDistance defines the pixel distance between each item. */ itemDistance?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) CSS styles for each legend item * when the corresponding series or point is hidden. Only a subset of CSS is * supported, notably those options related to text. Properties are * inherited from `style` unless overridden here. */ itemHiddenStyle?: CSSObject; /** * (Highcharts, Highstock, Highmaps, Gantt) CSS styles for each legend item * in hover mode. Only a subset of CSS is supported, notably those options * related to text. Properties are inherited from `style` unless overridden * here. */ itemHoverStyle?: CSSObject; /** * (Highcharts, Highstock, Highmaps, Gantt) The pixel bottom margin for each * legend item. */ itemMarginBottom?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The pixel top margin for each * legend item. */ itemMarginTop?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) CSS styles for each legend item. * Only a subset of CSS is supported, notably those options related to text. * The default `textOverflow` property makes long texts truncate. Set it to * `undefined` to wrap text instead. A `width` property can be added to * control the text width. */ itemStyle?: CSSObject; /** * (Highcharts, Highstock, Highmaps, Gantt) The width for each legend item. * By default the items are laid out successively. In a horizontal layout, * if the items are laid out across two rows or more, they will be * vertically aligned depending on the legend.alignColumns option. */ itemWidth?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) A format string for each legend * label. Available variables relates to properties on the series, or the * point in case of pies. */ labelFormat?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Callback function to format each * of the series' labels. The `this` keyword refers to the series object, or * the point object in case of pie charts. By default the series or point * name is printed. */ labelFormatter?: any; /** * (Highcharts, Highstock, Highmaps, Gantt) The layout of the legend items. * Can be one of `horizontal` or `vertical` or `proximate`. When * `proximate`, the legend items will be placed as close as possible to the * graphs they're representing, except in inverted charts or when the legend * position doesn't allow it. */ layout?: OptionsLayoutValue; /** * (Highcharts, Gantt) Line height for the legend items. Deprecated as of * 2.1\. Instead, the line height for each item can be set using * itemStyle.lineHeight, and the padding between items using `itemMarginTop` * and `itemMarginBottom`. */ lineHeight?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) If the plot area sized is * calculated automatically and the legend is not floating, the legend * margin is the space between the legend and the axis labels or plot area. */ margin?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) Maximum pixel height for the * legend. When the maximum height is extended, navigation will show. */ maxHeight?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) Options for the paging or * navigation appearing when the legend is overflown. Navigation works well * on screen, but not in static exported images. One way of working around * that is to increase the chart height in export. */ navigation?: LegendNavigationOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) The inner padding of the legend * box. */ padding?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to reverse the order of * the legend items compared to the order of the series or points as defined * in the configuration object. */ reversed?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to show the symbol on * the right side of the text rather than the left side. This is common in * Arabic and Hebraic. */ rtl?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to apply a drop shadow * to the legend. A `backgroundColor` also needs to be applied for this to * take effect. The shadow can be an object configuration containing * `color`, `offsetX`, `offsetY`, `opacity` and `width`. */ shadow?: (boolean|CSSObject); /** * (Highcharts, Highstock, Highmaps, Gantt) When this is true, the legend * symbol width will be the same as the symbol height, which in turn * defaults to the font size of the legend items. */ squareSymbol?: boolean; /** * (Highcharts, Highstock) CSS styles for the legend area. In the 1.x * versions the position of the legend area was determined by CSS. In 2.x, * the position is determined by properties like `align`, `verticalAlign`, * `x` and `y`, but the styles are still parsed for backwards compatibility. */ style?: CSSObject; /** * (Highcharts, Highstock, Highmaps, Gantt) The pixel height of the symbol * for series types that use a rectangle in the legend. Defaults to the font * size of legend items. */ symbolHeight?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The pixel padding between the * legend item symbol and the legend item text. */ symbolPadding?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The border radius of the symbol * for series types that use a rectangle in the legend. Defaults to half the * `symbolHeight`. */ symbolRadius?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The pixel width of the legend * item symbol. When the `squareSymbol` option is set, this defaults to the * `symbolHeight`, otherwise 16. */ symbolWidth?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) A title to be added on top of * the legend. */ title?: LegendTitleOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to use HTML to render * the legend item texts. * * Prior to 4.1.7, when using HTML, legend.navigation was disabled. */ useHTML?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) The vertical alignment of the * legend box. Can be one of `top`, `middle` or `bottom`. Vertical position * can be further determined by the `y` option. * * In the case that the legend is aligned in a corner position, the `layout` * option will determine whether to place it above/below or on the side of * the plot area. * * When the layout option is `proximate`, the `verticalAlign` option doesn't * apply. */ verticalAlign?: VerticalAlignValue; /** * (Highcharts, Highstock, Highmaps, Gantt) The width of the legend box. If * a number is set, it translates to pixels. Since v7.0.2 it allows setting * a percent string of the full chart width, for example `40%`. * * Defaults to the full chart width from legends below or above the chart, * half the chart width for legends to the left and right. */ width?: (number|string); /** * (Highcharts, Highstock, Highmaps, Gantt) The x offset of the legend * relative to its horizontal alignment `align` within chart.spacingLeft and * chart.spacingRight. Negative x moves it to the left, positive x moves it * to the right. */ x?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The vertical offset of the * legend relative to it's vertical alignment `verticalAlign` within * chart.spacingTop and chart.spacingBottom. Negative y moves it up, * positive y moves it down. */ y?: number; } /** * (Highcharts, Highstock, Highmaps, Gantt) A title to be added on top of the * legend. */ export interface LegendTitleOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Generic CSS styles for the * legend title. */ style?: CSSObject; /** * (Highcharts, Highstock, Highmaps, Gantt) A text or HTML string for the * title. */ text?: string; } /** * Defines the start position and the end position for a gradient relative to * the shape. Start position (x1, y1) and end position (x2, y2) are relative to * the shape, where 0 means top/left and 1 is bottom/right. */ export interface LinearGradientColorObject { /** * Start horizontal position of the gradient. Float ranges 0-1. */ x1: number; /** * End horizontal position of the gradient. Float ranges 0-1. */ x2: number; /** * Start vertical position of the gradient. Float ranges 0-1. */ y1: number; /** * End vertical position of the gradient. Float ranges 0-1. */ y2: number; } /** * (Highcharts, Highstock, Highmaps, Gantt) The loading options control the * appearance of the loading screen that covers the plot area on chart * operations. This screen only appears after an explicit call to * `chart.showLoading()`. It is a utility for developers to communicate to the * end user that something is going on, for example while retrieving new data * via an XHR connection. The "Loading..." text itself is not part of this * configuration object, but part of the `lang` object. */ export interface LoadingOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) The duration in milliseconds of * the fade out effect. */ hideDuration?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) CSS styles for the loading label * `span`. */ labelStyle?: CSSObject; /** * (Highcharts, Highstock, Highmaps, Gantt) The duration in milliseconds of * the fade in effect. */ showDuration?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) CSS styles for the loading * screen that covers the plot area. * * In styled mode, the loading label is styled with the * `.highcharts-loading` class. */ style?: CSSObject; } /** * Map data object. */ export interface MapDataObject { /** * The name of the data. */ name?: string; /** * The SVG path. */ path: SVGPathArray; /** * The GeoJSON meta data. */ properties?: object; } /** * (Highmaps) General options for the map navigation buttons. Individual options * can be given from the mapNavigation.buttons option set. */ export interface MapNavigationButtonOptions { /** * (Highmaps) The alignment of the navigation buttons. */ align?: AlignValue; /** * (Highmaps) What box to align the buttons to. Possible values are * `plotBox` and `spacingBox`. */ alignTo?: ButtonRelativeToValue; /** * (Highmaps) The pixel height of the map navigation buttons. */ height?: number; /** * (Highmaps) Padding for the navigation buttons. */ padding?: number; /** * (Highmaps) Text styles for the map navigation buttons. */ style?: CSSObject; /** * (Highmaps) A configuration object for the button theme. The object * accepts SVG properties like `stroke-width`, `stroke` and `fill`. * Tri-state button styles are supported by the `states.hover` and * `states.select` objects. */ theme?: SVGAttributes; /** * (Highmaps) The vertical alignment of the buttons. Individual alignment * can be adjusted by each button's `y` offset. */ verticalAlign?: VerticalAlignValue; /** * (Highmaps) The width of the map navigation buttons. */ width?: number; /** * (Highmaps) The X offset of the buttons relative to its `align` setting. */ x?: number; } /** * (Highmaps) The individual buttons for the map navigation. This usually * includes the zoom in and zoom out buttons. Properties for each button is * inherited from mapNavigation.buttonOptions, while individual options can be * overridden. But default, the `onclick`, `text` and `y` options are * individual. */ export interface MapNavigationButtonsOptions { /** * (Highmaps) Options for the zoom in button. Properties for the zoom in and * zoom out buttons are inherited from mapNavigation.buttonOptions, while * individual options can be overridden. By default, the `onclick`, `text` * and `y` options are individual. */ zoomIn?: MapNavigationButtonsZoomInOptions; /** * (Highmaps) Options for the zoom out button. Properties for the zoom in * and zoom out buttons are inherited from mapNavigation.buttonOptions, * while individual options can be overridden. By default, the `onclick`, * `text` and `y` options are individual. */ zoomOut?: MapNavigationButtonsZoomOutOptions; } /** * (Highmaps) Options for the zoom in button. Properties for the zoom in and * zoom out buttons are inherited from mapNavigation.buttonOptions, while * individual options can be overridden. By default, the `onclick`, `text` and * `y` options are individual. */ export interface MapNavigationButtonsZoomInOptions { /** * (Highmaps) The alignment of the navigation buttons. */ align?: AlignValue; /** * (Highmaps) What box to align the buttons to. Possible values are * `plotBox` and `spacingBox`. */ alignTo?: ButtonRelativeToValue; /** * (Highmaps) The pixel height of the map navigation buttons. */ height?: number; /** * (Highmaps) Click handler for the button. */ onclick?: Function; /** * (Highmaps) Padding for the navigation buttons. */ padding?: number; /** * (Highmaps) Text styles for the map navigation buttons. */ style?: CSSObject; /** * (Highmaps) The text for the button. The tooltip (title) is a language * option given by lang.zoomIn. */ text?: string; /** * (Highmaps) A configuration object for the button theme. The object * accepts SVG properties like `stroke-width`, `stroke` and `fill`. * Tri-state button styles are supported by the `states.hover` and * `states.select` objects. */ theme?: SVGAttributes; /** * (Highmaps) The vertical alignment of the buttons. Individual alignment * can be adjusted by each button's `y` offset. */ verticalAlign?: VerticalAlignValue; /** * (Highmaps) The width of the map navigation buttons. */ width?: number; /** * (Highmaps) The X offset of the buttons relative to its `align` setting. */ x?: number; /** * (Highmaps) The position of the zoomIn button relative to the vertical * alignment. */ y?: number; } /** * (Highmaps) Options for the zoom out button. Properties for the zoom in and * zoom out buttons are inherited from mapNavigation.buttonOptions, while * individual options can be overridden. By default, the `onclick`, `text` and * `y` options are individual. */ export interface MapNavigationButtonsZoomOutOptions { /** * (Highmaps) The alignment of the navigation buttons. */ align?: AlignValue; /** * (Highmaps) What box to align the buttons to. Possible values are * `plotBox` and `spacingBox`. */ alignTo?: ButtonRelativeToValue; /** * (Highmaps) The pixel height of the map navigation buttons. */ height?: number; /** * (Highmaps) Click handler for the button. */ onclick?: Function; /** * (Highmaps) Padding for the navigation buttons. */ padding?: number; /** * (Highmaps) Text styles for the map navigation buttons. */ style?: CSSObject; /** * (Highmaps) The text for the button. The tooltip (title) is a language * option given by lang.zoomOut. */ text?: string; /** * (Highmaps) A configuration object for the button theme. The object * accepts SVG properties like `stroke-width`, `stroke` and `fill`. * Tri-state button styles are supported by the `states.hover` and * `states.select` objects. */ theme?: SVGAttributes; /** * (Highmaps) The vertical alignment of the buttons. Individual alignment * can be adjusted by each button's `y` offset. */ verticalAlign?: VerticalAlignValue; /** * (Highmaps) The width of the map navigation buttons. */ width?: number; /** * (Highmaps) The X offset of the buttons relative to its `align` setting. */ x?: number; /** * (Highmaps) The position of the zoomOut button relative to the vertical * alignment. */ y?: number; } export interface MapNavigationOptions { /** * (Highmaps) General options for the map navigation buttons. Individual * options can be given from the mapNavigation.buttons option set. */ buttonOptions?: MapNavigationButtonOptions; /** * (Highmaps) The individual buttons for the map navigation. This usually * includes the zoom in and zoom out buttons. Properties for each button is * inherited from mapNavigation.buttonOptions, while individual options can * be overridden. But default, the `onclick`, `text` and `y` options are * individual. */ buttons?: MapNavigationButtonsOptions; /** * (Highmaps) Whether to enable navigation buttons. By default it inherits * the enabled setting. */ enableButtons?: boolean; /** * (Highmaps) Whether to enable map navigation. The default is not to enable * navigation, as many choropleth maps are simple and don't need it. * Additionally, when touch zoom and mousewheel zoom is enabled, it breaks * the default behaviour of these interactions in the website, and the * implementer should be aware of this. * * Individual interactions can be enabled separately, namely buttons, * multitouch zoom, double click zoom, double click zoom to element and * mousewheel zoom. */ enabled?: boolean; /** * (Highmaps) Enables zooming in on an area on double clicking in the map. * By default it inherits the enabled setting. */ enableDoubleClickZoom?: boolean; /** * (Highmaps) Whether to zoom in on an area when that area is double * clicked. */ enableDoubleClickZoomTo?: boolean; /** * (Highmaps) Enables zooming by mouse wheel. By default it inherits the * enabled setting. */ enableMouseWheelZoom?: boolean; /** * (Highmaps) Whether to enable multitouch zooming. Note that if the chart * covers the viewport, this prevents the user from using multitouch and * touchdrag on the web page, so you should make sure the user is not * trapped inside the chart. By default it inherits the enabled setting. */ enableTouchZoom?: boolean; /** * (Highmaps) Sensitivity of mouse wheel or trackpad scrolling. 1 is no * sensitivity, while with 2, one mousewheel delta will zoom in 50%. */ mouseWheelSensitivity?: number; } export interface NavigationAnnotationsEventsOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Event callback when annotation * is added to the chart. */ add?: any; /** * (Highcharts, Highstock, Highmaps, Gantt) Event callback when annotation * is updated (e.g. drag and droppped or resized by control points). */ afterUpdate?: any; /** * (Highcharts, Highstock, Highmaps, Gantt) Event callback when annotation * is removed from the chart. */ remove?: any; } /** * (Highcharts, Highstock, Highmaps, Gantt) Options for annotation's labels. * Each label inherits options from the labelOptions object. An option from the * labelOptions can be overwritten by config for a specific label. */ export interface NavigationAnnotationsLabelOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) The alignment of the * annotation's label. If right, the right side of the label should be * touching the point. */ align?: AlignValue; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to allow the * annotation's labels to overlap. To make the labels less sensitive for * overlapping, the can be set to 0. */ allowOverlap?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) The background color or gradient * for the annotation's label. */ backgroundColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Highmaps, Gantt) The border color for the * annotation's label. */ borderColor?: ColorString; /** * (Highcharts, Highstock, Highmaps, Gantt) The border radius in pixels for * the annotaiton's label. */ borderRadius?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The border width in pixels for * the annotation's label */ borderWidth?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) A class name for styling by CSS. */ className?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to hide the annotation's * label that is outside the plot area. */ crop?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) The label's pixel distance from * the point. */ distance?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) A format string for the data * label. */ format?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Callback JavaScript function to * format the annotation's label. Note that if a `format` or `text` are * defined, the format or text take precedence and the formatter is ignored. * `This` refers to a point object. */ formatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock, Highmaps, Gantt) How to handle the annotation's * label that flow outside the plot area. The justify option aligns the * label inside the plot area. */ overflow?: OptionsOverflowValue; /** * (Highcharts, Highstock, Highmaps, Gantt) When either the borderWidth or * the backgroundColor is set, this is the padding within the box. */ padding?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The shadow of the box. The * shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highcharts, Highstock, Highmaps, Gantt) The name of a symbol to use for * the border around the label. Symbols are predefined functions on the * Renderer object. */ shape?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Styles for the annotation's * label. */ style?: CSSObject; /** * (Highcharts, Highstock, Highmaps, Gantt) Alias for the format option. */ text?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to use HTML to render * the annotation's label. */ useHTML?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) The vertical alignment of the * annotation's label. */ verticalAlign?: VerticalAlignValue; /** * (Highcharts, Highstock, Highmaps, Gantt) The x position offset of the * label relative to the point. Note that if a `distance` is defined, the * distance takes precedence over `x` and `y` options. */ x?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The y position offset of the * label relative to the point. Note that if a `distance` is defined, the * distance takes precedence over `x` and `y` options. */ y?: number; } /** * (Highcharts, Highstock, Highmaps, Gantt) An array of labels for the * annotation. For options that apply to multiple labels, they can be added to * the labelOptions. */ export interface NavigationAnnotationsLabelsOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) The alignment of the * annotation's label. If right, the right side of the label should be * touching the point. */ align?: AlignValue; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to allow the * annotation's labels to overlap. To make the labels less sensitive for * overlapping, the can be set to 0. */ allowOverlap?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) The background color or gradient * for the annotation's label. */ backgroundColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Highmaps, Gantt) The border color for the * annotation's label. */ borderColor?: ColorString; /** * (Highcharts, Highstock, Highmaps, Gantt) The border radius in pixels for * the annotaiton's label. */ borderRadius?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The border width in pixels for * the annotation's label */ borderWidth?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) A class name for styling by CSS. */ className?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to hide the annotation's * label that is outside the plot area. */ crop?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) The label's pixel distance from * the point. */ distance?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) A format string for the data * label. */ format?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Callback JavaScript function to * format the annotation's label. Note that if a `format` or `text` are * defined, the format or text take precedence and the formatter is ignored. * `This` refers to a point object. */ formatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock, Highmaps, Gantt) How to handle the annotation's * label that flow outside the plot area. The justify option aligns the * label inside the plot area. */ overflow?: OptionsOverflowValue; /** * (Highcharts, Highstock, Highmaps, Gantt) When either the borderWidth or * the backgroundColor is set, this is the padding within the box. */ padding?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) This option defines the point to * which the label will be connected. It can be either the point which * exists in the series - it is referenced by the point's id - or a new * point with defined x, y properies and optionally axes. */ point?: (string|NavigationAnnotationsLabelsPointOptions); /** * (Highcharts, Highstock, Highmaps, Gantt) The shadow of the box. The * shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highcharts, Highstock, Highmaps, Gantt) The name of a symbol to use for * the border around the label. Symbols are predefined functions on the * Renderer object. */ shape?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Styles for the annotation's * label. */ style?: CSSObject; /** * (Highcharts, Highstock, Highmaps, Gantt) Alias for the format option. */ text?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to use HTML to render * the annotation's label. */ useHTML?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) The vertical alignment of the * annotation's label. */ verticalAlign?: VerticalAlignValue; /** * (Highcharts, Highstock, Highmaps, Gantt) The x position offset of the * label relative to the point. Note that if a `distance` is defined, the * distance takes precedence over `x` and `y` options. */ x?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The y position offset of the * label relative to the point. Note that if a `distance` is defined, the * distance takes precedence over `x` and `y` options. */ y?: number; } /** * (Highcharts, Highstock, Highmaps, Gantt) This option defines the point to * which the label will be connected. It can be either the point which exists in * the series - it is referenced by the point's id - or a new point with defined * x, y properies and optionally axes. */ export interface NavigationAnnotationsLabelsPointOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) The x position of the point. * Units can be either in axis or chart pixel coordinates. */ x?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) This number defines which xAxis * the point is connected to. It refers to either the axis id or the index * of the axis in the xAxis array. If the option is not configured or the * axis is not found the point's x coordinate refers to the chart pixels. */ xAxis?: (number|string); /** * (Highcharts, Highstock, Highmaps, Gantt) The y position of the point. * Units can be either in axis or chart pixel coordinates. */ y?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) This number defines which yAxis * the point is connected to. It refers to either the axis id or the index * of the axis in the yAxis array. If the option is not configured or the * axis is not found the point's y coordinate refers to the chart pixels. */ yAxis?: (number|string); } /** * (Highcharts, Highstock, Highmaps, Gantt) Additional options to be merged into * all annotations. */ export interface NavigationAnnotationsOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Allow an annotation to be * draggable by a user. Possible values are `"x"`, `"xy"`, `"y"` and `""` * (disabled). */ draggable?: string; events?: NavigationAnnotationsEventsOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) Sets an ID for an annotation. * Can be user later when removing an annotation in * Chart.removeAnnotation(id) method. */ id?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Options for annotation's labels. * Each label inherits options from the labelOptions object. An option from * the labelOptions can be overwritten by config for a specific label. */ labelOptions?: NavigationAnnotationsLabelOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) An array of labels for the * annotation. For options that apply to multiple labels, they can be added * to the labelOptions. */ labels?: Array<NavigationAnnotationsLabelsOptions>; /** * (Highcharts, Highstock, Highmaps, Gantt) Options for annotation's shapes. * Each shape inherits options from the shapeOptions object. An option from * the shapeOptions can be overwritten by config for a specific shape. */ shapeOptions?: NavigationAnnotationsShapeOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) An array of shapes for the * annotation. For options that apply to multiple shapes, then can be added * to the shapeOptions. */ shapes?: Array<NavigationAnnotationsShapesOptions>; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether the annotation is * visible. */ visible?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) The Z index of the annotation. */ zIndex?: number; } /** * (Highcharts, Highstock, Highmaps, Gantt) Options for annotation's shapes. * Each shape inherits options from the shapeOptions object. An option from the * shapeOptions can be overwritten by config for a specific shape. */ export interface NavigationAnnotationsShapeOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) The color of the shape's fill. */ fill?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Highmaps, Gantt) The height of the shape. */ height?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The radius of the shape. */ r?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The color of the shape's stroke. */ stroke?: ColorString; /** * (Highcharts, Highstock, Highmaps, Gantt) The pixel stroke width of the * shape. */ strokeWidth?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The type of the shape, e.g. * circle or rectangle. */ type?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) The width of the shape. */ width?: number; } /** * (Highcharts, Highstock, Highmaps, Gantt) An array of shapes for the * annotation. For options that apply to multiple shapes, then can be added to * the shapeOptions. */ export interface NavigationAnnotationsShapesOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) The color of the shape's fill. */ fill?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Highmaps, Gantt) The height of the shape. */ height?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) Id of the marker which will be * drawn at the final vertex of the path. Custom markers can be defined in * defs property. */ markerEnd?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Id of the marker which will be * drawn at the first vertex of the path. Custom markers can be defined in * defs property. */ markerStart?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) This option defines the point to * which the shape will be connected. It can be either the point which * exists in the series - it is referenced by the point's id - or a new * point with defined x, y properties and optionally axes. */ point?: (string|NavigationAnnotationsShapesPointOptions); /** * (Highcharts, Highstock, Highmaps, Gantt) An array of points for the * shape. This option is available for shapes which can use multiple points * such as path. A point can be either a point object or a point's id. */ points?: Array<NavigationAnnotationsShapesPointsOptions>; /** * (Highcharts, Highstock, Highmaps, Gantt) The radius of the shape. */ r?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The color of the shape's stroke. */ stroke?: ColorString; /** * (Highcharts, Highstock, Highmaps, Gantt) The pixel stroke width of the * shape. */ strokeWidth?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The type of the shape, e.g. * circle or rectangle. */ type?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) The width of the shape. */ width?: number; } /** * (Highcharts, Highstock, Highmaps, Gantt) This option defines the point to * which the shape will be connected. It can be either the point which exists in * the series - it is referenced by the point's id - or a new point with defined * x, y properties and optionally axes. */ export interface NavigationAnnotationsShapesPointOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) The x position of the point. * Units can be either in axis or chart pixel coordinates. */ x?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) This number defines which xAxis * the point is connected to. It refers to either the axis id or the index * of the axis in the xAxis array. If the option is not configured or the * axis is not found the point's x coordinate refers to the chart pixels. */ xAxis?: (number|string); /** * (Highcharts, Highstock, Highmaps, Gantt) The y position of the point. * Units can be either in axis or chart pixel coordinates. */ y?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) This number defines which yAxis * the point is connected to. It refers to either the axis id or the index * of the axis in the yAxis array. If the option is not configured or the * axis is not found the point's y coordinate refers to the chart pixels. */ yAxis?: (number|string); } /** * (Highcharts, Highstock, Highmaps, Gantt) An array of points for the shape. * This option is available for shapes which can use multiple points such as * path. A point can be either a point object or a point's id. */ export interface NavigationAnnotationsShapesPointsOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) The x position of the point. * Units can be either in axis or chart pixel coordinates. */ x?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) This number defines which xAxis * the point is connected to. It refers to either the axis id or the index * of the axis in the xAxis array. If the option is not configured or the * axis is not found the point's x coordinate refers to the chart pixels. */ xAxis?: (number|string); /** * (Highcharts, Highstock, Highmaps, Gantt) The y position of the point. * Units can be either in axis or chart pixel coordinates. */ y?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) This number defines which yAxis * the point is connected to. It refers to either the axis id or the index * of the axis in the yAxis array. If the option is not configured or the * axis is not found the point's y coordinate refers to the chart pixels. */ yAxis?: (number|string); } /** * (Highcharts, Highstock) Bindings definitions for custom HTML buttons. Each * binding implements simple event-driven interface: * * - `className`: classname used to bind event to * * - `init`: initial event, fired on button click * * - `start`: fired on first click on a chart * * - `steps`: array of sequential events fired one after another on each of * users clicks * * - `end`: last event to be called after last step event */ export interface NavigationBindingsOptions { /** * (Highstock) A line with arrow annotation. Includes `start` and one event * in `steps` array. */ arrowInfinityLine?: StockToolsBindingsObject; /** * (Highstock) A ray with an arrow annotation bindings. Includes `start` and * one event in `steps` array. */ arrowRay?: StockToolsBindingsObject; /** * (Highstock) A segment with an arrow annotation bindings. Includes `start` * and one event in `steps` array. */ arrowSegment?: StockToolsBindingsObject; /** * (Highcharts, Highstock) A circle annotation bindings. Includes `start` * and one event in `steps` array. */ circleAnnotation?: StockToolsBindingsObject; /** * (Highstock) Crooked line (three points) annotation bindings. Includes * `start` and two events in `steps` (for second and third points in crooked * line) array. */ crooked3?: StockToolsBindingsObject; /** * (Highstock) Crooked line (five points) annotation bindings. Includes * `start` and four events in `steps` (for all consequent points in crooked * line) array. */ crooked5?: StockToolsBindingsObject; /** * (Highstock) Hides/shows two price indicators: * * - last price in the dataset * * - last price in the selected range */ currentPriceIndicator?: StockToolsBindingsObject; /** * (Highstock) Elliott wave (three points) annotation bindings. Includes * `start` and two events in `steps` (for second and third points) array. */ elliott3?: StockToolsBindingsObject; /** * (Highstock) Elliott wave (five points) annotation bindings. Includes * `start` and four event in `steps` (for all consequent points in Elliott * wave) array. */ elliott5?: StockToolsBindingsObject; /** * (Highstock) A fibonacci annotation bindings. Includes `start` and two * events in `steps` array (updates second point, then height). */ fibonacci?: StockToolsBindingsObject; /** * (Highstock) A flag series bindings. Includes `start` event. On click, * finds the closest point and marks it with a flag with `'circlepin'` * shape. */ flagCirclepin?: StockToolsBindingsObject; /** * (Highstock) A flag series bindings. Includes `start` event. On click, * finds the closest point and marks it with a flag with `'diamondpin'` * shape. */ flagDiamondpin?: StockToolsBindingsObject; /** * (Highstock) A flag series bindings. Includes `start` event. On click, * finds the closest point and marks it with a flag without pin shape. */ flagSimplepin?: StockToolsBindingsObject; /** * (Highstock) A flag series bindings. Includes `start` event. On click, * finds the closest point and marks it with a flag with `'squarepin'` * shape. */ flagSquarepin?: StockToolsBindingsObject; /** * (Highstock) Displays chart in fullscreen. */ fullScreen?: StockToolsBindingsObject; /** * (Highstock) A horizontal line annotation. Includes `start` event. */ horizontalLine?: StockToolsBindingsObject; /** * (Highstock) Indicators bindings. Includes `init` event to show a popup. */ indicators?: StockToolsBindingsObject; /** * (Highstock) A line annotation. Includes `start` and one event in `steps` * array. */ infinityLine?: StockToolsBindingsObject; /** * (Highcharts, Highstock) A label annotation bindings. Includes `start` * event only. */ labelAnnotation?: StockToolsBindingsObject; /** * (Highstock) A measure (x-dimension) annotation bindings. Includes `start` * and one event in `steps` array. */ measureX?: StockToolsBindingsObject; /** * (Highstock) A measure (xy-dimension) annotation bindings. Includes * `start` and one event in `steps` array. */ measureXY?: StockToolsBindingsObject; /** * (Highstock) A measure (y-dimension) annotation bindings. Includes `start` * and one event in `steps` array. */ measureY?: StockToolsBindingsObject; /** * (Highstock) A parallel channel (tunnel) annotation bindings. Includes * `start` and two events in `steps` array (updates second point, then * height). */ parallelChannel?: StockToolsBindingsObject; /** * (Highstock) An Andrew's pitchfork annotation bindings. Includes `start` * and two events in `steps` array (sets second and third control points). */ pitchfork?: StockToolsBindingsObject; /** * (Highstock) A ray annotation bindings. Includes `start` and one event in * `steps` array. */ ray?: StockToolsBindingsObject; /** * (Highcharts, Highstock) A rectangle annotation bindings. Includes `start` * and one event in `steps` array. */ rectangleAnnotation?: StockToolsBindingsObject; /** * (Highstock) Save a chart in localStorage under `highcharts-chart` key. * Stored items: * * - annotations * * - indicators (with yAxes) * * - flags */ saveChart?: StockToolsBindingsObject; /** * (Highstock) A segment annotation bindings. Includes `start` and one event * in `steps` array. */ segment?: StockToolsBindingsObject; /** * (Highstock) Changes main series to `'candlestick'` type. */ seriesTypeCandlestick?: StockToolsBindingsObject; /** * (Highstock) Changes main series to `'line'` type. */ seriesTypeLine?: StockToolsBindingsObject; /** * (Highstock) Changes main series to `'ohlc'` type. */ seriesTypeOhlc?: StockToolsBindingsObject; /** * (Highstock) Hides/shows all annotations on a chart. */ toggleAnnotations?: StockToolsBindingsObject; /** * (Highstock) A vertical arrow annotation bindings. Includes `start` event. * On click, finds the closest point and marks it with an arrow. Green arrow * when pointing from above, red when pointing from below the point. */ verticalArrow?: StockToolsBindingsObject; /** * (Highstock) A vertical counter annotation bindings. Includes `start` * event. On click, finds the closest point and marks it with a numeric * annotation - incrementing counter on each add. */ verticalCounter?: StockToolsBindingsObject; /** * (Highstock) A vertical arrow annotation bindings. Includes `start` event. * On click, finds the closest point and marks it with an arrow and a label * with value. */ verticalLabel?: StockToolsBindingsObject; /** * (Highstock) A vertical line annotation. Includes `start` event. */ verticalLine?: StockToolsBindingsObject; /** * (Highstock) Enables zooming in xAxis on a chart. Includes `start` event * which changes chart.zoomType. */ zoomX?: StockToolsBindingsObject; /** * (Highstock) Enables zooming in xAxis and yAxis on a chart. Includes * `start` event which changes chart.zoomType. */ zoomXY?: StockToolsBindingsObject; /** * (Highstock) Enables zooming in yAxis on a chart. Includes `start` event * which changes chart.zoomType. */ zoomY?: StockToolsBindingsObject; } /** * (Highcharts, Highstock, Highmaps, Gantt) A collection of options for buttons * appearing in the exporting module. * * In styled mode, the buttons are styled with the `.highcharts-contextbutton` * and `.highcharts-button-symbol` classes. */ export interface NavigationButtonOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to enable buttons. */ enabled?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Fill color for the symbol within * the button. */ symbolFill?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Highmaps, Gantt) The color of the symbol's stroke * or line. */ symbolStroke?: ColorString; /** * (Highcharts, Highstock, Highmaps, Gantt) The pixel stroke width of the * symbol on the button. */ symbolStrokeWidth?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) A text string to add to the * individual button. */ text?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) A configuration object for the * button theme. The object accepts SVG properties like `stroke-width`, * `stroke` and `fill`. Tri-state button styles are supported by the * `states.hover` and `states.select` objects. */ theme?: NavigationButtonThemeOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) The vertical offset of the * button's position relative to its `verticalAlign`. */ y?: number; } /** * (Highcharts, Highstock, Highmaps, Gantt) A configuration object for the * button theme. The object accepts SVG properties like `stroke-width`, `stroke` * and `fill`. Tri-state button styles are supported by the `states.hover` and * `states.select` objects. */ export interface NavigationButtonThemeOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) The default fill exists only to * capture hover events. */ fill?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Highmaps, Gantt) Padding for the button. */ padding?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) Default stroke for the buttons. */ stroke?: ColorString; } /** * (Highcharts, Highstock) Events to communicate between Stock Tools and custom * GUI. */ export interface NavigationEventsOptions { /** * (Highcharts, Highstock) Event fired when button state should change, for * example after adding an annotation. */ deselectButton?: Function; /** * (Highcharts, Highstock) A `hidePopop` event. Fired when Popup should be * hidden, for exampole when clicking on an annotation again. */ hidePopup?: Function; /** * (Highcharts, Highstock) Event fired on a button click. */ selectButton?: Function; /** * (Highcharts, Highstock) A `showPopup` event. Fired when selecting for * example an annotation. */ showPopup?: Function; } /** * (Highcharts, Highstock, Highmaps, Gantt) A collection of options for buttons * and menus appearing in the exporting module. */ export interface NavigationOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Additional options to be merged * into all annotations. */ annotationsOptions?: (AnnotationsOptions|NavigationAnnotationsOptions); /** * (Highcharts, Highstock) Bindings definitions for custom HTML buttons. * Each binding implements simple event-driven interface: * * - `className`: classname used to bind event to * * - `init`: initial event, fired on button click * * - `start`: fired on first click on a chart * * - `steps`: array of sequential events fired one after another on each of * users clicks * * - `end`: last event to be called after last step event */ bindings?: (NavigationBindingsOptions|Dictionary<StockToolsBindingsObject>); /** * (Highcharts, Highstock, Highmaps, Gantt) A CSS class name where all * bindings will be attached to. Multiple charts on the same page should * have separate class names to prevent duplicating events. * * Default value of versions < 7.0.4 `highcharts-bindings-wrapper` */ bindingsClassName?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) A collection of options for * buttons appearing in the exporting module. * * In styled mode, the buttons are styled with the * `.highcharts-contextbutton` and `.highcharts-button-symbol` classes. */ buttonOptions?: NavigationButtonOptions; /** * (Highcharts, Highstock) Events to communicate between Stock Tools and * custom GUI. */ events?: NavigationEventsOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) CSS styles for the hover state * of the individual items within the popup menu appearing by default when * the export icon is clicked. The menu items are rendered in HTML. */ menuItemHoverStyle?: CSSObject; /** * (Highcharts, Highstock, Highmaps, Gantt) CSS styles for the individual * items within the popup menu appearing by default when the export icon is * clicked. The menu items are rendered in HTML. Font size defaults to * `11px` on desktop and `14px` on touch devices. */ menuItemStyle?: CSSObject; /** * (Highcharts, Highstock, Highmaps, Gantt) CSS styles for the popup menu * appearing by default when the export icon is clicked. This menu is * rendered in HTML. */ menuStyle?: CSSObject; } /** * (Highstock, Gantt) Options for the handles for dragging the zoomed area. */ export interface NavigatorHandlesOptions { /** * (Highstock, Gantt) The fill for the handle. */ backgroundColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock, Gantt) The stroke for the handle border and the stripes * inside. */ borderColor?: ColorString; /** * (Highstock, Gantt) Allows to enable/disable handles. */ enabled?: boolean; /** * (Highstock, Gantt) Height for handles. */ height?: number; /** * (Highstock, Gantt) The width for the handle border and the stripes * inside. */ lineWidth?: number; /** * (Highstock, Gantt) Array to define shapes of handles. 0-index for left, * 1-index for right. * * Additionally, the URL to a graphic can be given on this form: * `url(graphic.png)`. Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbols?: Array<string>; /** * (Highstock, Gantt) Width for handles. */ width?: number; } /** * (Highstock, Gantt) The navigator is a small series below the main series, * displaying a view of the entire data set. It provides tools to zoom in and * out on parts of the data as well as panning across the dataset. */ export interface NavigatorOptions { /** * (Highstock, Gantt) Whether the navigator and scrollbar should adapt to * updated data in the base X axis. When loading data async, as in the demo * below, this should be `false`. Otherwise new data will trigger navigator * redraw, which will cause unwanted looping. In the demo below, the data in * the navigator is set only once. On navigating, only the main chart * content is updated. */ adaptToUpdatedData?: boolean; /** * (Highstock, Gantt) An integer identifying the index to use for the base * series, or a string representing the id of the series. * * **Note**: As of Highcharts 5.0, this is now a deprecated option. Prefer * series.showInNavigator. */ baseSeries?: any; /** * (Highstock, Gantt) Enable or disable the navigator. */ enabled?: boolean; /** * (Highstock, Gantt) Options for the handles for dragging the zoomed area. */ handles?: NavigatorHandlesOptions; /** * (Highstock, Gantt) The height of the navigator. */ height?: number; /** * (Highstock, Gantt) The distance from the nearest element, the X axis or X * axis labels. */ margin?: number; /** * (Highstock, Gantt) The color of the mask covering the areas of the * navigator series that are currently not visible in the main series. The * default color is bluish with an opacity of 0.3 to see the series below. */ maskFill?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock, Gantt) Whether the mask should be inside the range marking * the zoomed range, or outside. In Highstock 1.x it was always `false`. */ maskInside?: boolean; /** * (Highstock, Gantt) When the chart is inverted, whether to draw the * navigator on the opposite side. */ opposite?: boolean; /** * (Highstock, Gantt) The color of the line marking the currently zoomed * area in the navigator. */ outlineColor?: ColorString; /** * (Highstock, Gantt) The width of the line marking the currently zoomed * area in the navigator. */ outlineWidth?: number; /** * (Highstock, Gantt) Options for the navigator series. Available options * are the same as any series, documented at plotOptions and series. * * Unless data is explicitly defined on navigator.series, the data is * borrowed from the first series in the chart. * * Default series options for the navigator series are: * * (see online documentation for example) */ series?: NavigatorSeriesOptions; /** * (Highstock, Gantt) Options for the navigator X axis. Default series * options for the navigator xAxis are: * * (see online documentation for example) */ xAxis?: NavigatorXAxisOptions; /** * (Highstock, Gantt) Options for the navigator Y axis. Default series * options for the navigator yAxis are: * * (see online documentation for example) */ yAxis?: NavigatorYAxisOptions; } /** * (Highstock) Data grouping options for the navigator series. */ export interface NavigatorSeriesDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: string; /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } export interface NavigatorSeriesMarkerOptions { enabled?: boolean; } /** * (Highstock, Gantt) Options for the navigator series. Available options are * the same as any series, documented at plotOptions and series. * * Unless data is explicitly defined on navigator.series, the data is borrowed * from the first series in the chart. * * Default series options for the navigator series are: * * (see online documentation for example) */ export interface NavigatorSeriesOptions { className?: string; /** * (Highstock, Gantt) Sets the fill color of the navigator series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Unless data is explicitly defined, the data is borrowed from * the first series in the chart. */ data?: Array<(number|Array<(number|string|null)>|object|null)>; /** * (Highstock) Data grouping options for the navigator series. */ dataGrouping?: NavigatorSeriesDataGroupingOptions; /** * (Highstock, Gantt) Data label options for the navigator series. Data * labels are disabled by default on the navigator series. */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock, Gantt) The fill opacity of the navigator series. */ fillOpacity?: number; id?: string; /** * (Highstock, Gantt) Line color for the navigator series. Allows setting * the color while disallowing the default candlestick setting. */ lineColor?: (ColorString|null); /** * (Highstock, Gantt) The pixel line width of the navigator series. */ lineWidth?: number; marker?: NavigatorSeriesMarkerOptions; pointRange?: number; /** * (Highstock, Gantt) The threshold option. Setting it to 0 will make the * default navigator area series draw its area from the 0 value and up. */ threshold?: (number|null); /** * (Highstock, Gantt) The type of the navigator series. Defaults to * `areaspline` if defined, otherwise `line`. */ type?: string; } /** * (Highstock, Gantt) Accessibility options for an axis. Requires the * accessibility module. */ export interface NavigatorXAxisAccessibilityOptions { /** * (Highstock, Gantt) Description for an axis to expose to screen reader * users. */ description?: string; /** * (Highstock, Gantt) Enable axis accessibility features, including axis * information in the screen reader information region. If this is disabled * on the xAxis, the x values are not exposed to screen readers for the * individual data points by default. */ enabled?: boolean; /** * (Highstock, Gantt) Range description for an axis. Overrides the default * range description. Set to empty to disable range description for this * axis. */ rangeDescription?: string; } /** * (Highcharts, Highstock, Gantt) An array defining breaks in the axis, the * sections defined will be left out and all the points shifted closer to each * other. */ export interface NavigatorXAxisBreaksOptions { /** * (Highcharts, Highstock, Gantt) A number indicating how much space should * be left between the start and the end of the break. The break size is * given in axis units, so for instance on a `datetime` axis, a break size * of 3600000 would indicate the equivalent of an hour. */ breakSize?: number; /** * (Highcharts, Highstock, Gantt) The point where the break starts. */ from?: number; /** * (Highcharts, Highstock, Gantt) Defines an interval after which the break * appears again. By default the breaks do not repeat. */ repeat?: number; /** * (Highcharts, Highstock, Gantt) The point where the break ends. */ to?: number; } /** * (Highstock) A label on the axis next to the crosshair. * * In styled mode, the label is styled with the `.highcharts-crosshair-label` * class. */ export interface NavigatorXAxisCrosshairLabelOptions { /** * (Highstock) Alignment of the label compared to the axis. Defaults to * `"left"` for right-side axes, `"right"` for left-side axes and `"center"` * for horizontal axes. */ align?: AlignValue; /** * (Highstock) The background color for the label. Defaults to the related * series color, or `#666666` if that is not available. */ backgroundColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The border color for the crosshair label */ borderColor?: ColorString; /** * (Highstock) The border corner radius of the crosshair label. */ borderRadius?: number; /** * (Highstock) The border width for the crosshair label. */ borderWidth?: number; /** * (Highstock) A format string for the crosshair label. Defaults to * `{value}` for numeric axes and `{value:%b %d, %Y}` for datetime axes. */ format?: string; /** * (Highstock) Formatter function for the label text. */ formatter?: XAxisCrosshairLabelFormatterCallbackFunction; /** * (Highstock) Padding inside the crosshair label. */ padding?: number; /** * (Highstock) The shape to use for the label box. */ shape?: string; /** * (Highstock) Text styles for the crosshair label. */ style?: CSSObject; } /** * (Highstock, Gantt) Configure a crosshair that follows either the mouse * pointer or the hovered point. * * In styled mode, the crosshairs are styled in the `.highcharts-crosshair`, * `.highcharts-crosshair-thin` or `.highcharts-xaxis-category` classes. */ export interface NavigatorXAxisCrosshairOptions { /** * (Highstock, Gantt) A class name for the crosshair, especially as a hook * for styling. */ className?: string; /** * (Highstock, Gantt) The color of the crosshair. Defaults to `#cccccc` for * numeric and datetime axes, and `rgba(204,214,235,0.25)` for category * axes, where the crosshair by default highlights the whole category. */ color?: ColorString; /** * (Highstock, Gantt) The dash style for the crosshair. See series.dashStyle * for possible values. */ dashStyle?: DashStyleValue; /** * (Highstock) A label on the axis next to the crosshair. * * In styled mode, the label is styled with the * `.highcharts-crosshair-label` class. */ label?: NavigatorXAxisCrosshairLabelOptions; /** * (Highstock, Gantt) Whether the crosshair should snap to the point or * follow the pointer independent of points. */ snap?: boolean; /** * (Highstock, Gantt) The pixel width of the crosshair. Defaults to 1 for * numeric or datetime axes, and for one category width for category axes. */ width?: number; /** * (Highstock, Gantt) The Z index of the crosshair. Higher Z indices allow * drawing the crosshair on top of the series or behind the grid lines. */ zIndex?: number; } /** * (Gantt) Text labels for the plot bands */ export interface NavigatorXAxisCurrentDateIndicatorLabelOptions { /** * (Gantt) Horizontal alignment of the label. Can be one of "left", "center" * or "right". */ align?: AlignValue; /** * (Gantt) Rotation of the text label in degrees. Defaults to 0 for * horizontal plot lines and 90 for vertical lines. */ rotation?: number; /** * (Gantt) CSS styles for the text label. * * In styled mode, the labels are styled by the * `.highcharts-plot-line-label` class. */ style?: CSSObject; /** * (Gantt) The text itself. A subset of HTML is supported. */ text?: string; /** * (Gantt) The text alignment for the label. While `align` determines where * the texts anchor point is placed within the plot band, `textAlign` * determines how the text is aligned against its anchor point. Possible * values are "left", "center" and "right". Defaults to the same as the * `align` option. */ textAlign?: AlignValue; /** * (Gantt) Whether to use HTML to render the labels. */ useHTML?: boolean; /** * (Gantt) Vertical alignment of the label relative to the plot line. Can be * one of "top", "middle" or "bottom". */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Horizontal position relative the alignment. Default varies by * orientation. */ x?: number; /** * (Gantt) Vertical position of the text baseline relative to the alignment. * Default varies by orientation. */ y?: number; } /** * (Gantt) Show an indicator on the axis for the current date and time. Can be a * boolean or a configuration object similar to xAxis.plotLines. */ export interface NavigatorXAxisCurrentDateIndicatorOptions { /** * (Gantt) A custom class name, in addition to the default * `highcharts-plot-line`, to apply to each individual line. */ className?: string; /** * (Gantt) The color of the line. */ color?: ColorString; /** * (Gantt) The dashing or dot style for the plot line. For possible values * see this overview. */ dashStyle?: DashStyleValue; /** * (Gantt) An object defining mouse events for the plot line. Supported * properties are `click`, `mouseover`, `mouseout`, `mousemove`. */ events?: any; /** * (Gantt) An id used for identifying the plot line in Axis.removePlotLine. */ id?: string; /** * (Gantt) Text labels for the plot bands */ label?: NavigatorXAxisCurrentDateIndicatorLabelOptions; /** * (Gantt) The width or thickness of the plot line. */ width?: number; /** * (Gantt) The z index of the plot line within the chart. */ zIndex?: number; } export interface NavigatorXAxisDateTimeLabelFormatsDayOptions { main?: string; } export interface NavigatorXAxisDateTimeLabelFormatsHourOptions { main?: string; range?: boolean; } export interface NavigatorXAxisDateTimeLabelFormatsMillisecondOptions { main?: string; range?: boolean; } export interface NavigatorXAxisDateTimeLabelFormatsMinuteOptions { main?: string; range?: boolean; } export interface NavigatorXAxisDateTimeLabelFormatsMonthOptions { main?: string; } /** * (Highcharts, Highstock, Gantt) For a datetime axis, the scale will * automatically adjust to the appropriate unit. This member gives the default * string representations used for each unit. For intermediate values, different * units may be used, for example the `day` unit can be used on midnight and * `hour` unit be used for intermediate values on the same axis. For an overview * of the replacement codes, see dateFormat. Defaults to: * * (see online documentation for example) */ export interface NavigatorXAxisDateTimeLabelFormatsOptions { day?: NavigatorXAxisDateTimeLabelFormatsDayOptions; hour?: NavigatorXAxisDateTimeLabelFormatsHourOptions; millisecond?: NavigatorXAxisDateTimeLabelFormatsMillisecondOptions; minute?: NavigatorXAxisDateTimeLabelFormatsMinuteOptions; month?: NavigatorXAxisDateTimeLabelFormatsMonthOptions; second?: NavigatorXAxisDateTimeLabelFormatsSecondOptions; week?: NavigatorXAxisDateTimeLabelFormatsWeekOptions; year?: NavigatorXAxisDateTimeLabelFormatsYearOptions; } export interface NavigatorXAxisDateTimeLabelFormatsSecondOptions { main?: string; range?: boolean; } export interface NavigatorXAxisDateTimeLabelFormatsWeekOptions { main?: string; } export interface NavigatorXAxisDateTimeLabelFormatsYearOptions { main?: string; } /** * (Highstock, Gantt) Event handlers for the axis. */ export interface NavigatorXAxisEventsOptions { /** * (Highcharts, Gantt) An event fired after the breaks have rendered. */ afterBreaks?: AxisEventCallbackFunction; /** * (Highstock, Gantt) As opposed to the `setExtremes` event, this event * fires after the final min and max values are computed and corrected for * `minRange`. * * Fires when the minimum and maximum is set for the axis, either by calling * the `.setExtremes()` method or by selecting an area in the chart. One * parameter, `event`, is passed to the function, containing common event * information. * * The new user set minimum and maximum values can be found by `event.min` * and `event.max`. These reflect the axis minimum and maximum in axis * values. The actual data extremes are found in `event.dataMin` and * `event.dataMax`. */ afterSetExtremes?: AxisSetExtremesEventCallbackFunction; /** * (Highcharts, Gantt) An event fired when a break from this axis occurs on * a point. */ pointBreak?: AxisPointBreakEventCallbackFunction; /** * (Highcharts, Highstock, Gantt) An event fired when a point falls inside a * break from this axis. */ pointInBreak?: AxisPointBreakEventCallbackFunction; /** * (Highstock, Gantt) Fires when the minimum and maximum is set for the * axis, either by calling the `.setExtremes()` method or by selecting an * area in the chart. One parameter, `event`, is passed to the function, * containing common event information. * * The new user set minimum and maximum values can be found by `event.min` * and `event.max`. These reflect the axis minimum and maximum in data * values. When an axis is zoomed all the way out from the "Reset zoom" * button, `event.min` and `event.max` are null, and the new extremes are * set based on `this.dataMin` and `this.dataMax`. */ setExtremes?: AxisSetExtremesEventCallbackFunction; } /** * (Gantt) Set grid options for the axis labels. Requires Highcharts Gantt. */ export interface NavigatorXAxisGridOptions { /** * (Gantt) Set border color for the label grid lines. */ borderColor?: ColorString; /** * (Gantt) Set border width of the label grid lines. */ borderWidth?: number; /** * (Gantt) Set cell height for grid axis labels. By default this is * calculated from font size. */ cellHeight?: number; /** * (Gantt) Set specific options for each column (or row for horizontal axes) * in the grid. Each extra column/row is its own axis, and the axis options * can be set here. */ columns?: Array<XAxisOptions>; /** * (Gantt) Enable grid on the axis labels. Defaults to true for Gantt * charts. */ enabled?: boolean; } /** * (Highstock, Gantt) The axis labels show the number or category for each tick. */ export interface NavigatorXAxisLabelsOptions { /** * (Highstock, Gantt) What part of the string the given position is anchored * to. If `left`, the left side of the string is at the axis position. Can * be one of `"left"`, `"center"` or `"right"`. Defaults to an intelligent * guess based on which side of the chart the axis is on and the rotation of * the label. */ align?: string; /** * (Highcharts, Highstock, Gantt) For horizontal axes, the allowed degrees * of label rotation to prevent overlapping labels. If there is enough * space, labels are not rotated. As the chart gets narrower, it will start * rotating the labels -45 degrees, then remove every second label and try * again with rotations 0 and -45 etc. Set it to `false` to disable * rotation, which will cause the labels to word-wrap if possible. */ autoRotation?: (false|Array<number>); /** * (Highcharts, Gantt) When each category width is more than this many * pixels, we don't apply auto rotation. Instead, we lay out the axis label * with word wrap. A lower limit makes sense when the label contains * multiple short words that don't extend the available horizontal space for * each label. */ autoRotationLimit?: number; /** * (Highcharts, Gantt) Polar charts only. The label's pixel distance from * the perimeter of the plot area. */ distance?: number; /** * (Highstock, Gantt) Enable or disable the axis labels. */ enabled?: boolean; /** * (Highstock, Gantt) A format string for the axis label. */ format?: string; /** * (Highstock, Gantt) Callback JavaScript function to format the label. The * value is given by `this.value`. Additional properties for `this` are * `axis`, `chart`, `isFirst` and `isLast`. The value of the default label * formatter can be retrieved by calling * `this.axis.defaultLabelFormatter.call(this)` within the function. * * Defaults to: * * (see online documentation for example) */ formatter?: FormatterCallbackFunction<AxisLabelsFormatterContextObject>; /** * (Gantt) The number of pixels to indent the labels per level in a treegrid * axis. */ indentation?: number; /** * (Highstock, Gantt) Horizontal axis only. When `staggerLines` is not set, * `maxStaggerLines` defines how many lines the axis is allowed to add to * automatically avoid overlapping X labels. Set to `1` to disable overlap * detection. */ maxStaggerLines?: number; /** * (Highstock, Gantt) How to handle overflowing labels on horizontal axis. * If set to `"allow"`, it will not be aligned at all. By default it * `"justify"` labels inside the chart area. If there is room to move it, it * will be aligned to the edge, else it will be removed. */ overflow?: OptionsOverflowValue; /** * (Highcharts, Gantt) The pixel padding for axis labels, to ensure white * space between them. */ padding?: number; /** * (Highcharts) Defines how the labels are be repositioned according to the * 3D chart orientation. * * - `'offset'`: Maintain a fixed horizontal/vertical distance from the tick * marks, despite the chart orientation. This is the backwards compatible * behavior, and causes skewing of X and Z axes. * * - `'chart'`: Preserve 3D position relative to the chart. This looks nice, * but hard to read if the text isn't forward-facing. * * - `'flap'`: Rotated text along the axis to compensate for the chart * orientation. This tries to maintain text as legible as possible on all * orientations. * * - `'ortho'`: Rotated text along the axis direction so that the labels are * orthogonal to the axis. This is very similar to `'flap'`, but prevents * skewing the labels (X and Y scaling are still present). */ position3d?: OptionsPosition3dValue; /** * (Highcharts, Gantt) Whether to reserve space for the labels. By default, * space is reserved for the labels in these cases: * * * On all horizontal axes. * * * On vertical axes if `label.align` is `right` on a left-side axis or * `left` on a right-side axis. * * * On vertical axes if `label.align` is `center`. * * This can be turned off when for example the labels are rendered inside * the plot area instead of outside. */ reserveSpace?: boolean; /** * (Highstock, Gantt) Rotation of the labels in degrees. */ rotation?: number; /** * (Highcharts) If enabled, the axis labels will skewed to follow the * perspective. * * This will fix overlapping labels and titles, but texts become less * legible due to the distortion. * * The final appearance depends heavily on `labels.position3d`. */ skew3d?: boolean; /** * (Highstock, Gantt) Horizontal axes only. The number of lines to spread * the labels over to make room or tighter labels. */ staggerLines?: number; /** * (Highstock, Gantt) To show only every _n_'th label on the axis, set the * step to _n_. Setting the step to 2 shows every other label. * * By default, the step is calculated automatically to avoid overlap. To * prevent this, set it to 1\. This usually only happens on a category axis, * and is often a sign that you have chosen the wrong axis type. * * Read more at Axis docs => What axis should I use? */ step?: number; /** * (Highstock, Gantt) CSS styles for the label. Use `whiteSpace: 'nowrap'` * to prevent wrapping of category labels. Use `textOverflow: 'none'` to * prevent ellipsis (dots). * * In styled mode, the labels are styled with the `.highcharts-axis-labels` * class. */ style?: CSSObject; /** * (Highstock, Gantt) Whether to use HTML to render the labels. */ useHTML?: boolean; /** * (Highstock, Gantt) The x position offset of the label relative to the * tick position on the axis. */ x?: number; /** * (Highstock, Gantt) The y position offset of the label relative to the * tick position on the axis. The default makes it adapt to the font size on * bottom axis. */ y?: number; /** * (Highstock, Gantt) The Z index for the axis labels. */ zIndex?: number; } /** * (Highstock, Gantt) Options for the navigator X axis. Default series options * for the navigator xAxis are: * * (see online documentation for example) */ export interface NavigatorXAxisOptions { /** * (Highstock, Gantt) Accessibility options for an axis. Requires the * accessibility module. */ accessibility?: (object|NavigatorXAxisAccessibilityOptions); /** * (Highcharts, Highstock, Gantt) When using multiple axis, the ticks of two * or more opposite axes will automatically be aligned by adding ticks to * the axis or axes with the least ticks, as if `tickAmount` were specified. * * This can be prevented by setting `alignTicks` to false. If the grid lines * look messy, it's a good idea to hide them for the secondary axis by * setting `gridLineWidth` to 0. * * If `startOnTick` or `endOnTick` in an Axis options are set to false, then * the `alignTicks ` will be disabled for the Axis. * * Disabled for logarithmic axes. */ alignTicks?: boolean; /** * (Highstock, Gantt) Whether to allow decimals in this axis' ticks. When * counting integers, like persons or hits on a web page, decimals should be * avoided in the labels. */ allowDecimals?: boolean; /** * (Highstock, Gantt) When using an alternate grid color, a band is painted * across the plot area between every other grid line. */ alternateGridColor?: ColorString; /** * (Highcharts, Highstock, Gantt) An array defining breaks in the axis, the * sections defined will be left out and all the points shifted closer to * each other. */ breaks?: Array<NavigatorXAxisBreaksOptions>; /** * (Highcharts, Gantt) If categories are present for the xAxis, names are * used instead of numbers for that axis. Since Highcharts 3.0, categories * can also be extracted by giving each point a name and setting axis type * to `category`. However, if you have multiple series, best practice * remains defining the `categories` array. * * Example: * * (see online documentation for example) */ categories?: Array<string>; /** * (Highcharts, Highstock, Gantt) The highest allowed value for * automatically computed axis extremes. */ ceiling?: number; /** * (Highstock, Gantt) A class name that opens for styling the axis by CSS, * especially in Highcharts styled mode. The class name is applied to group * elements for the grid, axis elements and labels. */ className?: string; /** * (Highstock, Gantt) Configure a crosshair that follows either the mouse * pointer or the hovered point. * * In styled mode, the crosshairs are styled in the `.highcharts-crosshair`, * `.highcharts-crosshair-thin` or `.highcharts-xaxis-category` classes. */ crosshair?: (boolean|NavigatorXAxisCrosshairOptions); /** * (Gantt) Show an indicator on the axis for the current date and time. Can * be a boolean or a configuration object similar to xAxis.plotLines. */ currentDateIndicator?: (boolean|NavigatorXAxisCurrentDateIndicatorOptions); /** * (Highcharts, Highstock, Gantt) For a datetime axis, the scale will * automatically adjust to the appropriate unit. This member gives the * default string representations used for each unit. For intermediate * values, different units may be used, for example the `day` unit can be * used on midnight and `hour` unit be used for intermediate values on the * same axis. For an overview of the replacement codes, see dateFormat. * Defaults to: * * (see online documentation for example) */ dateTimeLabelFormats?: NavigatorXAxisDateTimeLabelFormatsOptions; /** * (Highstock, Gantt) Whether to force the axis to end on a tick. Use this * option with the `maxPadding` option to control the axis end. */ endOnTick?: boolean; /** * (Highstock, Gantt) Event handlers for the axis. */ events?: NavigatorXAxisEventsOptions; /** * (Highcharts, Highstock, Gantt) The lowest allowed value for automatically * computed axis extremes. */ floor?: number; /** * (Gantt) Set grid options for the axis labels. Requires Highcharts Gantt. */ grid?: NavigatorXAxisGridOptions; /** * (Highstock, Gantt) Color of the grid lines extending the ticks across the * plot area. * * In styled mode, the stroke is given in the `.highcharts-grid-line` class. */ gridLineColor?: string; /** * (Highstock, Gantt) The dash or dot style of the grid lines. For possible * values, see this demonstration. */ gridLineDashStyle?: DashStyleValue; /** * (Highstock, Gantt) The width of the grid lines extending the ticks across * the plot area. * * In styled mode, the stroke width is given in the `.highcharts-grid-line` * class. */ gridLineWidth?: number; /** * (Highcharts, Highstock, Gantt) The Z index of the grid lines. */ gridZIndex?: number; /** * (Highstock, Gantt) An id for the axis. This can be used after render time * to get a pointer to the axis object through `chart.get()`. */ id?: string; /** * (Highstock, Gantt) The axis labels show the number or category for each * tick. */ labels?: NavigatorXAxisLabelsOptions; /** * (Highstock, Gantt) The color of the line marking the axis itself. * * In styled mode, the line stroke is given in the `.highcharts-axis-line` * or `.highcharts-xaxis-line` class. */ lineColor?: ColorString; /** * (Highstock, Gantt) The width of the line marking the axis itself. * * In styled mode, the stroke width is given in the `.highcharts-axis-line` * or `.highcharts-xaxis-line` class. */ lineWidth?: number; /** * (Highstock, Gantt) If there are multiple axes on the same side of the * chart, the pixel margin between the axes. Defaults to 0 on vertical axes, * 15 on horizontal axes. */ margin?: any; /** * (Highstock, Gantt) The maximum value of the axis. If `null`, the max * value is automatically calculated. * * If the endOnTick option is true, the `max` value might be rounded up. * * If a tickAmount is set, the axis may be extended beyond the set max in * order to reach the given number of ticks. The same may happen in a chart * with multiple axes, determined by chart. alignTicks, where a `tickAmount` * is applied internally. */ max?: (number|null); /** * (Highstock, Gantt) Padding of the max value relative to the length of the * axis. A padding of 0.05 will make a 100px axis 5px longer. This is useful * when you don't want the highest data value to appear on the edge of the * plot area. When the axis' `max` option is set or a max extreme is set * using `axis.setExtremes()`, the maxPadding will be ignored. */ maxPadding?: number; /** * (Highstock, Gantt) The minimum value of the axis. If `null` the min value * is automatically calculated. * * If the startOnTick option is true (default), the `min` value might be * rounded down. * * The automatically calculated minimum value is also affected by floor, * softMin, minPadding, minRange as well as series.threshold and * series.softThreshold. */ min?: (number|null); /** * (Highstock, Gantt) Color of the minor, secondary grid lines. * * In styled mode, the stroke width is given in the * `.highcharts-minor-grid-line` class. */ minorGridLineColor?: ColorString; /** * (Highstock, Gantt) The dash or dot style of the minor grid lines. For * possible values, see this demonstration. */ minorGridLineDashStyle?: DashStyleValue; /** * (Highstock, Gantt) Width of the minor, secondary grid lines. * * In styled mode, the stroke width is given in the `.highcharts-grid-line` * class. */ minorGridLineWidth?: number; /** * (Highstock, Gantt) Color for the minor tick marks. */ minorTickColor?: ColorString; /** * (Highstock, Gantt) Specific tick interval in axis units for the minor * ticks. On a linear axis, if `"auto"`, the minor tick interval is * calculated as a fifth of the tickInterval. If `null` or `undefined`, * minor ticks are not shown. * * On logarithmic axes, the unit is the power of the value. For example, * setting the minorTickInterval to 1 puts one tick on each of 0.1, 1, 10, * 100 etc. Setting the minorTickInterval to 0.1 produces 9 ticks between 1 * and 10, 10 and 100 etc. * * If user settings dictate minor ticks to become too dense, they don't make * sense, and will be ignored to prevent performance problems. */ minorTickInterval?: (number|string|null); /** * (Highstock, Gantt) The pixel length of the minor tick marks. */ minorTickLength?: number; /** * (Highstock, Gantt) The position of the minor tick marks relative to the * axis line. Can be one of `inside` and `outside`. */ minorTickPosition?: OptionsMinorTickPositionValue; /** * (Highstock, Gantt) Enable or disable minor ticks. Unless * minorTickInterval is set, the tick interval is calculated as a fifth of * the `tickInterval`. * * On a logarithmic axis, minor ticks are laid out based on a best guess, * attempting to enter approximately 5 minor ticks between each major tick. * * Prior to v6.0.0, ticks were unabled in auto layout by setting * `minorTickInterval` to `"auto"`. */ minorTicks?: boolean; /** * (Highstock, Gantt) The pixel width of the minor tick mark. */ minorTickWidth?: number; /** * (Highcharts, Highstock, Gantt) Padding of the min value relative to the * length of the axis. A padding of 0.05 will make a 100px axis 5px longer. * This is useful when you don't want the lowest data value to appear on the * edge of the plot area. When the axis' `min` option is set or a min * extreme is set using `axis.setExtremes()`, the minPadding will be * ignored. */ minPadding?: number; /** * (Highstock, Gantt) The minimum tick interval allowed in axis values. For * example on zooming in on an axis with daily data, this can be used to * prevent the axis from showing hours. Defaults to the closest distance * between two points on the axis. */ minTickInterval?: number; /** * (Highstock, Gantt) The distance in pixels from the plot area to the axis * line. A positive offset moves the axis with it's line, labels and ticks * away from the plot area. This is typically used when two or more axes are * displayed on the same side of the plot. With multiple axes the offset is * dynamically adjusted to avoid collision, this can be overridden by * setting offset explicitly. */ offset?: number; /** * (Highstock) In an ordinal axis, the points are equally spaced in the * chart regardless of the actual time or x distance between them. This * means that missing data periods (e.g. nights or weekends for a stock * chart) will not take up space in the chart. Having `ordinal: false` will * show any gaps created by the `gapSize` setting proportionate to their * duration. * * In stock charts the X axis is ordinal by default, unless the boost module * is used and at least one of the series' data length exceeds the * boostThreshold. */ ordinal?: boolean; /** * (Highstock) Additional range on the right side of the xAxis. Works * similar to xAxis.maxPadding, but value is set in milliseconds. Can be set * for both, main xAxis and navigator's xAxis. */ overscroll?: number; /** * (Highcharts) Refers to the index in the panes array. Used for circular * gauges and polar charts. When the option is not set then first pane will * be used. */ pane?: number; /** * (Highcharts, Highstock, Gantt) An array of colored bands stretching * across the plot area marking an interval on the axis. * * In styled mode, the plot bands are styled by the `.highcharts-plot-band` * class in addition to the `className` option. */ plotBands?: Array<NavigatorXAxisPlotBandsOptions>; /** * (Highcharts, Highstock, Gantt) An array of lines stretching across the * plot area, marking a specific value on one of the axes. * * In styled mode, the plot lines are styled by the `.highcharts-plot-line` * class in addition to the `className` option. */ plotLines?: Array<NavigatorXAxisPlotLinesOptions>; /** * (Highstock, Gantt) Whether to reverse the axis so that the highest number * is closest to the origin. If the chart is inverted, the x axis is * reversed by default. */ reversed?: boolean; /** * (Highcharts, Highstock) This option determines how stacks should be * ordered within a group. For example reversed xAxis also reverses stacks, * so first series comes last in a group. To keep order like for * non-reversed xAxis enable this option. */ reversedStacks?: boolean; /** * (Highstock, Gantt) Whether to show the first tick label. */ showFirstLabel?: boolean; /** * (Highcharts, Highstock, Gantt) Whether to show the last tick label. * Defaults to `true` on cartesian charts, and `false` on polar charts. */ showLastLabel?: boolean; /** * (Highcharts, Highstock, Gantt) A soft maximum for the axis. If the series * data maximum is less than this, the axis will stay at this maximum, but * if the series data maximum is higher, the axis will flex to show all * data. */ softMax?: number; /** * (Highcharts, Highstock, Gantt) A soft minimum for the axis. If the series * data minimum is greater than this, the axis will stay at this minimum, * but if the series data minimum is lower, the axis will flex to show all * data. */ softMin?: number; /** * (Highcharts, Highstock, Gantt) For datetime axes, this decides where to * put the tick between weeks. 0 = Sunday, 1 = Monday. */ startOfWeek?: number; /** * (Highstock, Gantt) Whether to force the axis to start on a tick. Use this * option with the `minPadding` option to control the axis start. */ startOnTick?: boolean; /** * (Highcharts, Highstock, Gantt) The amount of ticks to draw on the axis. * This opens up for aligning the ticks of multiple charts or panes within a * chart. This option overrides the `tickPixelInterval` option. * * This option only has an effect on linear axes. Datetime, logarithmic or * category axes are not affected. */ tickAmount?: number; /** * (Highstock, Gantt) Color for the main tick marks. * * In styled mode, the stroke is given in the `.highcharts-tick` class. */ tickColor?: ColorString; /** * (Highstock, Gantt) The interval of the tick marks in axis units. When * `undefined`, the tick interval is computed to approximately follow the * tickPixelInterval on linear and datetime axes. On categorized axes, a * `undefined` tickInterval will default to 1, one category. Note that * datetime axes are based on milliseconds, so for example an interval of * one day is expressed as `24 * 3600 * 1000`. * * On logarithmic axes, the tickInterval is based on powers, so a * tickInterval of 1 means one tick on each of 0.1, 1, 10, 100 etc. A * tickInterval of 2 means a tick of 0.1, 10, 1000 etc. A tickInterval of * 0.2 puts a tick on 0.1, 0.2, 0.4, 0.6, 0.8, 1, 2, 4, 6, 8, 10, 20, 40 * etc. * * If the tickInterval is too dense for labels to be drawn, Highcharts may * remove ticks. * * If the chart has multiple axes, the alignTicks option may interfere with * the `tickInterval` setting. */ tickInterval?: number; /** * (Highstock, Gantt) The pixel length of the main tick marks. */ tickLength?: number; /** * (Highcharts, Gantt) For categorized axes only. If `on` the tick mark is * placed in the center of the category, if `between` the tick mark is * placed between categories. The default is `between` if the `tickInterval` * is 1, else `on`. */ tickmarkPlacement?: OptionsTickmarkPlacementValue; /** * (Highstock, Gantt) If tickInterval is `null` this option sets the * approximate pixel interval of the tick marks. Not applicable to * categorized axis. * * The tick interval is also influenced by the minTickInterval option, that, * by default prevents ticks from being denser than the data points. */ tickPixelInterval?: number; /** * (Highstock, Gantt) The position of the major tick marks relative to the * axis line. Can be one of `inside` and `outside`. */ tickPosition?: OptionsTickPositionValue; /** * (Highstock, Gantt) A callback function returning array defining where the * ticks are laid out on the axis. This overrides the default behaviour of * tickPixelInterval and tickInterval. The automatic tick positions are * accessible through `this.tickPositions` and can be modified by the * callback. */ tickPositioner?: AxisTickPositionerCallbackFunction; /** * (Highstock, Gantt) An array defining where the ticks are laid out on the * axis. This overrides the default behaviour of tickPixelInterval and * tickInterval. */ tickPositions?: Array<number>; /** * (Highstock, Gantt) The pixel width of the major tick marks. Defaults to 0 * on category axes, otherwise 1. * * In styled mode, the stroke width is given in the `.highcharts-tick` * class. */ tickWidth?: (number|undefined); /** * (Highstock, Gantt) The axis title, showing next to the axis line. */ title?: NavigatorXAxisTitleOptions; /** * (Highcharts, Gantt) The type of axis. Can be one of `linear`, * `logarithmic`, `datetime` or `category`. In a datetime axis, the numbers * are given in milliseconds, and tick marks are placed on appropriate * values like full hours or days. In a category axis, the point names of * the chart's series are used for categories, if not a categories array is * defined. */ type?: AxisTypeValue; /** * (Highcharts, Gantt) Applies only when the axis `type` is `category`. When * `uniqueNames` is true, points are placed on the X axis according to their * names. If the same point name is repeated in the same or another series, * the point is placed on the same X position as other points of the same * name. When `uniqueNames` is false, the points are laid out in increasing * X positions regardless of their names, and the X axis category will take * the name of the last point in each position. */ uniqueNames?: boolean; /** * (Highcharts, Highstock, Gantt) Datetime axis only. An array determining * what time intervals the ticks are allowed to fall on. Each array item is * an array where the first value is the time unit and the second value * another array of allowed multiples. Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; /** * (Highcharts, Highstock, Gantt) Whether axis, including axis title, line, * ticks and labels, should be visible. */ visible?: boolean; } /** * (Highcharts, Highstock, Gantt) Text labels for the plot bands */ export interface NavigatorXAxisPlotBandsLabelOptions { /** * (Highcharts, Highstock, Gantt) Horizontal alignment of the label. Can be * one of "left", "center" or "right". */ align?: AlignValue; /** * (Highcharts, Highstock, Gantt) Rotation of the text label in degrees . */ rotation?: number; /** * (Highcharts, Highstock, Gantt) CSS styles for the text label. * * In styled mode, the labels are styled by the * `.highcharts-plot-band-label` class. */ style?: CSSObject; /** * (Highcharts, Highstock, Gantt) The string text itself. A subset of HTML * is supported. */ text?: string; /** * (Highcharts, Highstock, Gantt) The text alignment for the label. While * `align` determines where the texts anchor point is placed within the plot * band, `textAlign` determines how the text is aligned against its anchor * point. Possible values are "left", "center" and "right". Defaults to the * same as the `align` option. */ textAlign?: AlignValue; /** * (Highcharts, Highstock, Gantt) Whether to use HTML to render the labels. */ useHTML?: boolean; /** * (Highcharts, Highstock, Gantt) Vertical alignment of the label relative * to the plot band. Can be one of "top", "middle" or "bottom". */ verticalAlign?: VerticalAlignValue; /** * (Highcharts, Highstock, Gantt) Horizontal position relative the * alignment. Default varies by orientation. */ x?: number; /** * (Highcharts, Highstock, Gantt) Vertical position of the text baseline * relative to the alignment. Default varies by orientation. */ y?: number; } /** * (Highcharts, Highstock, Gantt) An array of colored bands stretching across * the plot area marking an interval on the axis. * * In styled mode, the plot bands are styled by the `.highcharts-plot-band` * class in addition to the `className` option. */ export interface NavigatorXAxisPlotBandsOptions { /** * (Highcharts, Highstock, Gantt) Border color for the plot band. Also * requires `borderWidth` to be set. */ borderColor?: ColorString; /** * (Highcharts, Highstock, Gantt) Border width for the plot band. Also * requires `borderColor` to be set. */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) A custom class name, in addition to the * default `highcharts-plot-band`, to apply to each individual band. */ className?: string; /** * (Highcharts, Highstock, Gantt) The color of the plot band. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) An object defining mouse events for the * plot band. Supported properties are `click`, `mouseover`, `mouseout`, * `mousemove`. */ events?: any; /** * (Highcharts, Highstock, Gantt) The start position of the plot band in * axis units. */ from?: number; /** * (Highcharts, Highstock, Gantt) An id used for identifying the plot band * in Axis.removePlotBand. */ id?: string; /** * (Highcharts, Highstock, Gantt) Text labels for the plot bands */ label?: NavigatorXAxisPlotBandsLabelOptions; /** * (Highcharts, Highstock, Gantt) The end position of the plot band in axis * units. */ to?: number; /** * (Highcharts, Highstock, Gantt) The z index of the plot band within the * chart, relative to other elements. Using the same z index as another * element may give unpredictable results, as the last rendered element will * be on top. Values from 0 to 20 make sense. */ zIndex?: number; } /** * (Highcharts, Highstock, Gantt) Text labels for the plot bands */ export interface NavigatorXAxisPlotLinesLabelOptions { /** * (Highcharts, Highstock, Gantt) Horizontal alignment of the label. Can be * one of "left", "center" or "right". */ align?: AlignValue; /** * (Highcharts, Highstock, Gantt) Rotation of the text label in degrees. * Defaults to 0 for horizontal plot lines and 90 for vertical lines. */ rotation?: number; /** * (Highcharts, Highstock, Gantt) CSS styles for the text label. * * In styled mode, the labels are styled by the * `.highcharts-plot-line-label` class. */ style?: CSSObject; /** * (Highcharts, Highstock, Gantt) The text itself. A subset of HTML is * supported. */ text?: string; /** * (Highcharts, Highstock, Gantt) The text alignment for the label. While * `align` determines where the texts anchor point is placed within the plot * band, `textAlign` determines how the text is aligned against its anchor * point. Possible values are "left", "center" and "right". Defaults to the * same as the `align` option. */ textAlign?: AlignValue; /** * (Highcharts, Highstock, Gantt) Whether to use HTML to render the labels. */ useHTML?: boolean; /** * (Highcharts, Highstock, Gantt) Vertical alignment of the label relative * to the plot line. Can be one of "top", "middle" or "bottom". */ verticalAlign?: VerticalAlignValue; /** * (Highcharts, Highstock, Gantt) Horizontal position relative the * alignment. Default varies by orientation. */ x?: number; /** * (Highcharts, Highstock, Gantt) Vertical position of the text baseline * relative to the alignment. Default varies by orientation. */ y?: number; } /** * (Highcharts, Highstock, Gantt) An array of lines stretching across the plot * area, marking a specific value on one of the axes. * * In styled mode, the plot lines are styled by the `.highcharts-plot-line` * class in addition to the `className` option. */ export interface NavigatorXAxisPlotLinesOptions { /** * (Highcharts, Highstock, Gantt) A custom class name, in addition to the * default `highcharts-plot-line`, to apply to each individual line. */ className?: string; /** * (Highcharts, Highstock, Gantt) The color of the line. */ color?: ColorString; /** * (Highcharts, Highstock, Gantt) The dashing or dot style for the plot * line. For possible values see this overview. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock, Gantt) An object defining mouse events for the * plot line. Supported properties are `click`, `mouseover`, `mouseout`, * `mousemove`. */ events?: any; /** * (Highcharts, Highstock, Gantt) An id used for identifying the plot line * in Axis.removePlotLine. */ id?: string; /** * (Highcharts, Highstock, Gantt) Text labels for the plot bands */ label?: NavigatorXAxisPlotLinesLabelOptions; /** * (Highcharts, Highstock, Gantt) The position of the line in axis units. */ value?: number; /** * (Highcharts, Highstock, Gantt) The width or thickness of the plot line. */ width?: number; /** * (Highcharts, Highstock, Gantt) The z index of the plot line within the * chart. */ zIndex?: number; } /** * (Highstock, Gantt) The axis title, showing next to the axis line. */ export interface NavigatorXAxisTitleOptions { /** * (Highstock, Gantt) Alignment of the title relative to the axis values. * Possible values are "low", "middle" or "high". */ align?: AxisTitleAlignValue; /** * (Highcharts) Deprecated. Set the `text` to `null` to disable the title. */ enabled?: string; /** * (Highstock, Gantt) The pixel distance between the axis labels or line and * the title. Defaults to 0 for horizontal axes, 10 for vertical */ margin?: number; /** * (Highstock, Gantt) The distance of the axis title from the axis line. By * default, this distance is computed from the offset width of the labels, * the labels' distance from the axis and the title's margin. However when * the offset option is set, it overrides all this. */ offset?: number; /** * (Highcharts) Defines how the title is repositioned according to the 3D * chart orientation. * * - `'offset'`: Maintain a fixed horizontal/vertical distance from the tick * marks, despite the chart orientation. This is the backwards compatible * behavior, and causes skewing of X and Z axes. * * - `'chart'`: Preserve 3D position relative to the chart. This looks nice, * but hard to read if the text isn't forward-facing. * * - `'flap'`: Rotated text along the axis to compensate for the chart * orientation. This tries to maintain text as legible as possible on all * orientations. * * - `'ortho'`: Rotated text along the axis direction so that the labels are * orthogonal to the axis. This is very similar to `'flap'`, but prevents * skewing the labels (X and Y scaling are still present). * * - `undefined`: Will use the config from `labels.position3d` */ position3d?: ("chart"|"flap"|"offset"|"ortho"|null); /** * (Highcharts, Highstock, Gantt) Whether to reserve space for the title * when laying out the axis. */ reserveSpace?: boolean; /** * (Highstock, Gantt) The rotation of the text in degrees. 0 is horizontal, * 270 is vertical reading from bottom to top. */ rotation?: number; /** * (Highcharts) If enabled, the axis title will skewed to follow the * perspective. * * This will fix overlapping labels and titles, but texts become less * legible due to the distortion. * * The final appearance depends heavily on `title.position3d`. * * A `null` value will use the config from `labels.skew3d`. */ skew3d?: (boolean|null); /** * (Highstock, Gantt) CSS styles for the title. If the title text is longer * than the axis length, it will wrap to multiple lines by default. This can * be customized by setting `textOverflow: 'ellipsis'`, by setting a * specific `width` or by setting `whiteSpace: 'nowrap'`. * * In styled mode, the stroke width is given in the `.highcharts-axis-title` * class. */ style?: CSSObject; /** * (Highstock, Gantt) The actual text of the axis title. It can contain * basic HTML text markup like <b>, <i> and spans with style. */ text?: (string|null); /** * (Highstock, Gantt) Alignment of the text, can be `"left"`, `"right"` or * `"center"`. Default alignment depends on the title.align: * * Horizontal axes: * * - for `align` = `"low"`, `textAlign` is set to `left` * * - for `align` = `"middle"`, `textAlign` is set to `center` * * - for `align` = `"high"`, `textAlign` is set to `right` * * Vertical axes: * * - for `align` = `"low"` and `opposite` = `true`, `textAlign` is set to * `right` * * - for `align` = `"low"` and `opposite` = `false`, `textAlign` is set to * `left` * * - for `align` = `"middle"`, `textAlign` is set to `center` * * - for `align` = `"high"` and `opposite` = `true` `textAlign` is set to * `left` * * - for `align` = `"high"` and `opposite` = `false` `textAlign` is set to * `right` */ textAlign?: AlignValue; /** * (Highcharts, Highstock, Gantt) Whether to use HTML to render the axis * title. */ useHTML?: boolean; /** * (Highcharts, Highstock, Gantt) Horizontal pixel offset of the title * position. */ x?: number; /** * (Highcharts, Highstock, Gantt) Vertical pixel offset of the title * position. */ y?: number; } /** * (Highstock, Gantt) Accessibility options for an axis. Requires the * accessibility module. */ export interface NavigatorYAxisAccessibilityOptions { /** * (Highstock, Gantt) Description for an axis to expose to screen reader * users. */ description?: string; /** * (Highstock, Gantt) Enable axis accessibility features, including axis * information in the screen reader information region. If this is disabled * on the xAxis, the x values are not exposed to screen readers for the * individual data points by default. */ enabled?: boolean; /** * (Highstock, Gantt) Range description for an axis. Overrides the default * range description. Set to empty to disable range description for this * axis. */ rangeDescription?: string; } /** * (Highcharts, Highstock, Gantt) An array defining breaks in the axis, the * sections defined will be left out and all the points shifted closer to each * other. */ export interface NavigatorYAxisBreaksOptions { /** * (Highcharts, Highstock, Gantt) A number indicating how much space should * be left between the start and the end of the break. The break size is * given in axis units, so for instance on a `datetime` axis, a break size * of 3600000 would indicate the equivalent of an hour. */ breakSize?: number; /** * (Highcharts, Highstock, Gantt) The point where the break starts. */ from?: number; /** * (Highcharts, Highstock, Gantt) Defines an interval after which the break * appears again. By default the breaks do not repeat. */ repeat?: number; /** * (Highcharts, Highstock, Gantt) The point where the break ends. */ to?: number; } /** * (Highstock) A label on the axis next to the crosshair. * * In styled mode, the label is styled with the `.highcharts-crosshair-label` * class. */ export interface NavigatorYAxisCrosshairLabelOptions { /** * (Highstock) Alignment of the label compared to the axis. Defaults to * `"left"` for right-side axes, `"right"` for left-side axes and `"center"` * for horizontal axes. */ align?: AlignValue; /** * (Highstock) The background color for the label. Defaults to the related * series color, or `#666666` if that is not available. */ backgroundColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The border color for the crosshair label */ borderColor?: ColorString; /** * (Highstock) The border corner radius of the crosshair label. */ borderRadius?: number; /** * (Highstock) The border width for the crosshair label. */ borderWidth?: number; /** * (Highstock) A format string for the crosshair label. Defaults to * `{value}` for numeric axes and `{value:%b %d, %Y}` for datetime axes. */ format?: string; /** * (Highstock) Formatter function for the label text. */ formatter?: XAxisCrosshairLabelFormatterCallbackFunction; /** * (Highstock) Padding inside the crosshair label. */ padding?: number; /** * (Highstock) The shape to use for the label box. */ shape?: string; /** * (Highstock) Text styles for the crosshair label. */ style?: CSSObject; } /** * (Highstock, Gantt) Configure a crosshair that follows either the mouse * pointer or the hovered point. * * In styled mode, the crosshairs are styled in the `.highcharts-crosshair`, * `.highcharts-crosshair-thin` or `.highcharts-xaxis-category` classes. */ export interface NavigatorYAxisCrosshairOptions { /** * (Highstock, Gantt) A class name for the crosshair, especially as a hook * for styling. */ className?: string; /** * (Highstock, Gantt) The color of the crosshair. Defaults to `#cccccc` for * numeric and datetime axes, and `rgba(204,214,235,0.25)` for category * axes, where the crosshair by default highlights the whole category. */ color?: ColorString; /** * (Highstock, Gantt) The dash style for the crosshair. See series.dashStyle * for possible values. */ dashStyle?: DashStyleValue; /** * (Highstock) A label on the axis next to the crosshair. * * In styled mode, the label is styled with the * `.highcharts-crosshair-label` class. */ label?: NavigatorYAxisCrosshairLabelOptions; /** * (Highstock, Gantt) Whether the crosshair should snap to the point or * follow the pointer independent of points. */ snap?: boolean; /** * (Highstock, Gantt) The pixel width of the crosshair. Defaults to 1 for * numeric or datetime axes, and for one category width for category axes. */ width?: number; /** * (Highstock, Gantt) The Z index of the crosshair. Higher Z indices allow * drawing the crosshair on top of the series or behind the grid lines. */ zIndex?: number; } export interface NavigatorYAxisDateTimeLabelFormatsDayOptions { main?: string; } export interface NavigatorYAxisDateTimeLabelFormatsHourOptions { main?: string; range?: boolean; } export interface NavigatorYAxisDateTimeLabelFormatsMillisecondOptions { main?: string; range?: boolean; } export interface NavigatorYAxisDateTimeLabelFormatsMinuteOptions { main?: string; range?: boolean; } export interface NavigatorYAxisDateTimeLabelFormatsMonthOptions { main?: string; } /** * (Highcharts, Highstock, Gantt) For a datetime axis, the scale will * automatically adjust to the appropriate unit. This member gives the default * string representations used for each unit. For intermediate values, different * units may be used, for example the `day` unit can be used on midnight and * `hour` unit be used for intermediate values on the same axis. For an overview * of the replacement codes, see dateFormat. Defaults to: * * (see online documentation for example) */ export interface NavigatorYAxisDateTimeLabelFormatsOptions { day?: NavigatorYAxisDateTimeLabelFormatsDayOptions; hour?: NavigatorYAxisDateTimeLabelFormatsHourOptions; millisecond?: NavigatorYAxisDateTimeLabelFormatsMillisecondOptions; minute?: NavigatorYAxisDateTimeLabelFormatsMinuteOptions; month?: NavigatorYAxisDateTimeLabelFormatsMonthOptions; second?: NavigatorYAxisDateTimeLabelFormatsSecondOptions; week?: NavigatorYAxisDateTimeLabelFormatsWeekOptions; year?: NavigatorYAxisDateTimeLabelFormatsYearOptions; } export interface NavigatorYAxisDateTimeLabelFormatsSecondOptions { main?: string; range?: boolean; } export interface NavigatorYAxisDateTimeLabelFormatsWeekOptions { main?: string; } export interface NavigatorYAxisDateTimeLabelFormatsYearOptions { main?: string; } /** * (Highstock, Gantt) Event handlers for the axis. */ export interface NavigatorYAxisEventsOptions { /** * (Highcharts, Gantt) An event fired after the breaks have rendered. */ afterBreaks?: AxisEventCallbackFunction; /** * (Highstock, Gantt) As opposed to the `setExtremes` event, this event * fires after the final min and max values are computed and corrected for * `minRange`. * * Fires when the minimum and maximum is set for the axis, either by calling * the `.setExtremes()` method or by selecting an area in the chart. One * parameter, `event`, is passed to the function, containing common event * information. * * The new user set minimum and maximum values can be found by `event.min` * and `event.max`. These reflect the axis minimum and maximum in axis * values. The actual data extremes are found in `event.dataMin` and * `event.dataMax`. */ afterSetExtremes?: AxisSetExtremesEventCallbackFunction; /** * (Highcharts, Gantt) An event fired when a break from this axis occurs on * a point. */ pointBreak?: AxisPointBreakEventCallbackFunction; /** * (Highcharts, Highstock, Gantt) An event fired when a point falls inside a * break from this axis. */ pointInBreak?: AxisPointBreakEventCallbackFunction; /** * (Highstock, Gantt) Fires when the minimum and maximum is set for the * axis, either by calling the `.setExtremes()` method or by selecting an * area in the chart. One parameter, `event`, is passed to the function, * containing common event information. * * The new user set minimum and maximum values can be found by `event.min` * and `event.max`. These reflect the axis minimum and maximum in data * values. When an axis is zoomed all the way out from the "Reset zoom" * button, `event.min` and `event.max` are null, and the new extremes are * set based on `this.dataMin` and `this.dataMax`. */ setExtremes?: AxisSetExtremesEventCallbackFunction; } /** * (Gantt) Set grid options for the axis labels. Requires Highcharts Gantt. */ export interface NavigatorYAxisGridOptions { /** * (Gantt) Set border color for the label grid lines. */ borderColor?: ColorString; /** * (Gantt) Set border width of the label grid lines. */ borderWidth?: number; /** * (Gantt) Set cell height for grid axis labels. By default this is * calculated from font size. */ cellHeight?: number; /** * (Gantt) Set specific options for each column (or row for horizontal axes) * in the grid. Each extra column/row is its own axis, and the axis options * can be set here. */ columns?: Array<XAxisOptions>; /** * (Gantt) Enable grid on the axis labels. Defaults to true for Gantt * charts. */ enabled?: boolean; } /** * (Gantt) Set options on specific levels in a tree grid axis. Takes precedence * over labels options. */ export interface NavigatorYAxisLabelsLevelsOptions { /** * (Gantt) Specify the level which the options within this object applies * to. */ level?: number; style?: CSSObject; } /** * (Highstock, Gantt) The axis labels show the number or category for each tick. */ export interface NavigatorYAxisLabelsOptions { /** * (Highstock, Gantt) What part of the string the given position is anchored * to. Can be one of `"left"`, `"center"` or `"right"`. The exact position * also depends on the `labels.x` setting. * * Angular gauges and solid gauges defaults to `"center"`. */ align?: AlignValue; /** * (Highcharts, Highstock, Gantt) For horizontal axes, the allowed degrees * of label rotation to prevent overlapping labels. If there is enough * space, labels are not rotated. As the chart gets narrower, it will start * rotating the labels -45 degrees, then remove every second label and try * again with rotations 0 and -45 etc. Set it to `false` to disable * rotation, which will cause the labels to word-wrap if possible. */ autoRotation?: (false|Array<number>); /** * (Highcharts, Gantt) When each category width is more than this many * pixels, we don't apply auto rotation. Instead, we lay out the axis label * with word wrap. A lower limit makes sense when the label contains * multiple short words that don't extend the available horizontal space for * each label. */ autoRotationLimit?: number; /** * (Highcharts) Angular gauges and solid gauges only. The label's pixel * distance from the perimeter of the plot area. */ distance?: number; /** * (Highstock, Gantt) Enable or disable the axis labels. */ enabled?: boolean; /** * (Highstock, Gantt) A format string for the axis label. */ format?: string; /** * (Highstock, Gantt) Callback JavaScript function to format the label. The * value is given by `this.value`. Additional properties for `this` are * `axis`, `chart`, `isFirst` and `isLast`. The value of the default label * formatter can be retrieved by calling * `this.axis.defaultLabelFormatter.call(this)` within the function. * * Defaults to: * * (see online documentation for example) */ formatter?: FormatterCallbackFunction<AxisLabelsFormatterContextObject>; /** * (Gantt) The number of pixels to indent the labels per level in a treegrid * axis. */ indentation?: number; /** * (Gantt) Set options on specific levels in a tree grid axis. Takes * precedence over labels options. */ levels?: Array<NavigatorYAxisLabelsLevelsOptions>; /** * (Highstock, Gantt) Horizontal axis only. When `staggerLines` is not set, * `maxStaggerLines` defines how many lines the axis is allowed to add to * automatically avoid overlapping X labels. Set to `1` to disable overlap * detection. */ maxStaggerLines?: number; /** * (Highstock, Gantt) How to handle overflowing labels on horizontal axis. * If set to `"allow"`, it will not be aligned at all. By default it * `"justify"` labels inside the chart area. If there is room to move it, it * will be aligned to the edge, else it will be removed. */ overflow?: OptionsOverflowValue; /** * (Highcharts, Gantt) The pixel padding for axis labels, to ensure white * space between them. */ padding?: number; /** * (Highcharts) Defines how the labels are be repositioned according to the * 3D chart orientation. * * - `'offset'`: Maintain a fixed horizontal/vertical distance from the tick * marks, despite the chart orientation. This is the backwards compatible * behavior, and causes skewing of X and Z axes. * * - `'chart'`: Preserve 3D position relative to the chart. This looks nice, * but hard to read if the text isn't forward-facing. * * - `'flap'`: Rotated text along the axis to compensate for the chart * orientation. This tries to maintain text as legible as possible on all * orientations. * * - `'ortho'`: Rotated text along the axis direction so that the labels are * orthogonal to the axis. This is very similar to `'flap'`, but prevents * skewing the labels (X and Y scaling are still present). */ position3d?: OptionsPosition3dValue; /** * (Highcharts, Gantt) Whether to reserve space for the labels. By default, * space is reserved for the labels in these cases: * * * On all horizontal axes. * * * On vertical axes if `label.align` is `right` on a left-side axis or * `left` on a right-side axis. * * * On vertical axes if `label.align` is `center`. * * This can be turned off when for example the labels are rendered inside * the plot area instead of outside. */ reserveSpace?: boolean; /** * (Highstock, Gantt) Rotation of the labels in degrees. */ rotation?: number; /** * (Highcharts) If enabled, the axis labels will skewed to follow the * perspective. * * This will fix overlapping labels and titles, but texts become less * legible due to the distortion. * * The final appearance depends heavily on `labels.position3d`. */ skew3d?: boolean; /** * (Highstock, Gantt) Horizontal axes only. The number of lines to spread * the labels over to make room or tighter labels. */ staggerLines?: number; /** * (Highstock, Gantt) To show only every _n_'th label on the axis, set the * step to _n_. Setting the step to 2 shows every other label. * * By default, the step is calculated automatically to avoid overlap. To * prevent this, set it to 1\. This usually only happens on a category axis, * and is often a sign that you have chosen the wrong axis type. * * Read more at Axis docs => What axis should I use? */ step?: number; /** * (Highstock, Gantt) CSS styles for the label. Use `whiteSpace: 'nowrap'` * to prevent wrapping of category labels. Use `textOverflow: 'none'` to * prevent ellipsis (dots). * * In styled mode, the labels are styled with the `.highcharts-axis-labels` * class. */ style?: CSSObject; /** * (Gantt) The symbol for the collapse and expand icon in a treegrid. */ symbol?: NavigatorYAxisLabelsSymbolOptions; /** * (Highstock, Gantt) Whether to use HTML to render the labels. */ useHTML?: boolean; /** * (Highstock, Gantt) The x position offset of the label relative to the * tick position on the axis. Defaults to -15 for left axis, 15 for right * axis. */ x?: number; /** * (Highstock, Gantt) The y position offset of the label relative to the * tick position on the axis. */ y?: number; /** * (Highstock, Gantt) The Z index for the axis labels. */ zIndex?: number; } /** * (Gantt) The symbol for the collapse and expand icon in a treegrid. */ export interface NavigatorYAxisLabelsSymbolOptions { height?: number; padding?: number; /** * (Gantt) The symbol type. Points to a definition function in the * `Highcharts.Renderer.symbols` collection. */ type?: SymbolKeyValue; width?: number; x?: number; y?: number; } /** * (Highstock, Gantt) Options for the navigator Y axis. Default series options * for the navigator yAxis are: * * (see online documentation for example) */ export interface NavigatorYAxisOptions { /** * (Highstock, Gantt) Accessibility options for an axis. Requires the * accessibility module. */ accessibility?: (object|NavigatorYAxisAccessibilityOptions); /** * (Highcharts, Highstock, Gantt) When using multiple axis, the ticks of two * or more opposite axes will automatically be aligned by adding ticks to * the axis or axes with the least ticks, as if `tickAmount` were specified. * * This can be prevented by setting `alignTicks` to false. If the grid lines * look messy, it's a good idea to hide them for the secondary axis by * setting `gridLineWidth` to 0. * * If `startOnTick` or `endOnTick` in an Axis options are set to false, then * the `alignTicks ` will be disabled for the Axis. * * Disabled for logarithmic axes. */ alignTicks?: boolean; /** * (Highstock, Gantt) Whether to allow decimals in this axis' ticks. When * counting integers, like persons or hits on a web page, decimals should be * avoided in the labels. */ allowDecimals?: boolean; /** * (Highstock, Gantt) When using an alternate grid color, a band is painted * across the plot area between every other grid line. */ alternateGridColor?: ColorString; /** * (Highcharts) In a polar chart, this is the angle of the Y axis in * degrees, where 0 is up and 90 is right. The angle determines the position * of the axis line and the labels, though the coordinate system is * unaffected. */ angle?: number; /** * (Highcharts, Highstock, Gantt) An array defining breaks in the axis, the * sections defined will be left out and all the points shifted closer to * each other. */ breaks?: Array<NavigatorYAxisBreaksOptions>; /** * (Highcharts, Gantt) If categories are present for the xAxis, names are * used instead of numbers for that axis. Since Highcharts 3.0, categories * can also be extracted by giving each point a name and setting axis type * to `category`. However, if you have multiple series, best practice * remains defining the `categories` array. * * Example: * * (see online documentation for example) */ categories?: Array<string>; /** * (Highcharts, Highstock, Gantt) The highest allowed value for * automatically computed axis extremes. */ ceiling?: number; /** * (Highstock, Gantt) A class name that opens for styling the axis by CSS, * especially in Highcharts styled mode. The class name is applied to group * elements for the grid, axis elements and labels. */ className?: string; /** * (Highstock, Gantt) Configure a crosshair that follows either the mouse * pointer or the hovered point. * * In styled mode, the crosshairs are styled in the `.highcharts-crosshair`, * `.highcharts-crosshair-thin` or `.highcharts-xaxis-category` classes. */ crosshair?: (boolean|NavigatorYAxisCrosshairOptions); /** * (Highcharts, Highstock, Gantt) For a datetime axis, the scale will * automatically adjust to the appropriate unit. This member gives the * default string representations used for each unit. For intermediate * values, different units may be used, for example the `day` unit can be * used on midnight and `hour` unit be used for intermediate values on the * same axis. For an overview of the replacement codes, see dateFormat. * Defaults to: * * (see online documentation for example) */ dateTimeLabelFormats?: NavigatorYAxisDateTimeLabelFormatsOptions; /** * (Highstock, Gantt) Whether to force the axis to end on a tick. Use this * option with the `maxPadding` option to control the axis end. */ endOnTick?: boolean; /** * (Highstock, Gantt) Event handlers for the axis. */ events?: NavigatorYAxisEventsOptions; /** * (Highcharts, Highstock, Gantt) The lowest allowed value for automatically * computed axis extremes. */ floor?: number; /** * (Gantt) Set grid options for the axis labels. Requires Highcharts Gantt. */ grid?: NavigatorYAxisGridOptions; /** * (Highstock, Gantt) Color of the grid lines extending the ticks across the * plot area. * * In styled mode, the stroke is given in the `.highcharts-grid-line` class. */ gridLineColor?: ColorString; /** * (Highstock, Gantt) The dash or dot style of the grid lines. For possible * values, see this demonstration. */ gridLineDashStyle?: DashStyleValue; /** * (Highcharts) Polar charts only. Whether the grid lines should draw as a * polygon with straight lines between categories, or as circles. Can be * either `circle` or `polygon`. */ gridLineInterpolation?: OptionsGridLineInterpolationValue; /** * (Highstock, Gantt) The width of the grid lines extending the ticks across * the plot area. * * In styled mode, the stroke width is given in the `.highcharts-grid-line` * class. */ gridLineWidth?: number; /** * (Highcharts, Highstock, Gantt) The Z index of the grid lines. */ gridZIndex?: number; /** * (Highstock, Gantt) An id for the axis. This can be used after render time * to get a pointer to the axis object through `chart.get()`. */ id?: string; /** * (Highstock, Gantt) The axis labels show the number or category for each * tick. */ labels?: NavigatorYAxisLabelsOptions; /** * (Highstock, Gantt) The color of the line marking the axis itself. * * In styled mode, the line stroke is given in the `.highcharts-axis-line` * or `.highcharts-xaxis-line` class. */ lineColor?: ColorString; /** * (Highstock, Gantt) The width of the line marking the axis itself. * * In styled mode, the stroke width is given in the `.highcharts-axis-line` * or `.highcharts-xaxis-line` class. */ lineWidth?: number; /** * (Highstock, Gantt) If there are multiple axes on the same side of the * chart, the pixel margin between the axes. Defaults to 0 on vertical axes, * 15 on horizontal axes. */ margin?: any; /** * (Highstock, Gantt) The maximum value of the axis. If `null`, the max * value is automatically calculated. * * If the endOnTick option is true, the `max` value might be rounded up. * * If a tickAmount is set, the axis may be extended beyond the set max in * order to reach the given number of ticks. The same may happen in a chart * with multiple axes, determined by chart. alignTicks, where a `tickAmount` * is applied internally. */ max?: (number|null); /** * (Highcharts) Solid gauge only. Unless stops are set, the color to * represent the maximum value of the Y axis. */ maxColor?: ColorString; /** * (Highcharts, Highstock, Gantt) Padding of the max value relative to the * length of the axis. A padding of 0.05 will make a 100px axis 5px longer. * This is useful when you don't want the highest data value to appear on * the edge of the plot area. When the axis' `max` option is set or a max * extreme is set using `axis.setExtremes()`, the maxPadding will be * ignored. */ maxPadding?: number; /** * (Highstock, Gantt) The minimum value of the axis. If `null` the min value * is automatically calculated. * * If the startOnTick option is true (default), the `min` value might be * rounded down. * * The automatically calculated minimum value is also affected by floor, * softMin, minPadding, minRange as well as series.threshold and * series.softThreshold. */ min?: (number|null); /** * (Highcharts) Solid gauge only. Unless stops are set, the color to * represent the minimum value of the Y axis. */ minColor?: ColorString; /** * (Highstock, Gantt) Color of the minor, secondary grid lines. * * In styled mode, the stroke width is given in the * `.highcharts-minor-grid-line` class. */ minorGridLineColor?: ColorString; /** * (Highstock, Gantt) The dash or dot style of the minor grid lines. For * possible values, see this demonstration. */ minorGridLineDashStyle?: DashStyleValue; /** * (Highstock, Gantt) Width of the minor, secondary grid lines. * * In styled mode, the stroke width is given in the `.highcharts-grid-line` * class. */ minorGridLineWidth?: number; /** * (Highstock, Gantt) Color for the minor tick marks. */ minorTickColor?: ColorString; /** * (Highstock, Gantt) Specific tick interval in axis units for the minor * ticks. On a linear axis, if `"auto"`, the minor tick interval is * calculated as a fifth of the tickInterval. If `null` or `undefined`, * minor ticks are not shown. * * On logarithmic axes, the unit is the power of the value. For example, * setting the minorTickInterval to 1 puts one tick on each of 0.1, 1, 10, * 100 etc. Setting the minorTickInterval to 0.1 produces 9 ticks between 1 * and 10, 10 and 100 etc. * * If user settings dictate minor ticks to become too dense, they don't make * sense, and will be ignored to prevent performance problems. */ minorTickInterval?: (number|string|null); /** * (Highstock, Gantt) The pixel length of the minor tick marks. */ minorTickLength?: number; /** * (Highstock, Gantt) The position of the minor tick marks relative to the * axis line. Can be one of `inside` and `outside`. */ minorTickPosition?: OptionsMinorTickPositionValue; /** * (Highstock, Gantt) Enable or disable minor ticks. Unless * minorTickInterval is set, the tick interval is calculated as a fifth of * the `tickInterval`. * * On a logarithmic axis, minor ticks are laid out based on a best guess, * attempting to enter approximately 5 minor ticks between each major tick. * * Prior to v6.0.0, ticks were unabled in auto layout by setting * `minorTickInterval` to `"auto"`. */ minorTicks?: boolean; /** * (Highstock, Gantt) The pixel width of the minor tick mark. */ minorTickWidth?: number; /** * (Highcharts, Highstock, Gantt) Padding of the min value relative to the * length of the axis. A padding of 0.05 will make a 100px axis 5px longer. * This is useful when you don't want the lowest data value to appear on the * edge of the plot area. When the axis' `min` option is set or a max * extreme is set using `axis.setExtremes()`, the maxPadding will be * ignored. */ minPadding?: number; /** * (Highstock, Gantt) The minimum tick interval allowed in axis values. For * example on zooming in on an axis with daily data, this can be used to * prevent the axis from showing hours. Defaults to the closest distance * between two points on the axis. */ minTickInterval?: number; /** * (Highstock, Gantt) The distance in pixels from the plot area to the axis * line. A positive offset moves the axis with it's line, labels and ticks * away from the plot area. This is typically used when two or more axes are * displayed on the same side of the plot. With multiple axes the offset is * dynamically adjusted to avoid collision, this can be overridden by * setting offset explicitly. */ offset?: number; /** * (Highstock, Highcharts, Gantt) Whether to display the axis on the * opposite side of the normal. The normal is on the left side for vertical * axes and bottom for horizontal, so the opposite sides will be right and * top respectively. This is typically used with dual or multiple axes. */ opposite?: boolean; /** * (Highcharts) Refers to the index in the panes array. Used for circular * gauges and polar charts. When the option is not set then first pane will * be used. */ pane?: number; /** * (Highcharts, Highstock, Gantt) An array of objects defining plot bands on * the Y axis. */ plotBands?: Array<NavigatorYAxisPlotBandsOptions>; /** * (Highcharts, Highstock, Gantt) An array of objects representing plot * lines on the X axis */ plotLines?: Array<NavigatorYAxisPlotLinesOptions>; /** * (Highstock, Gantt) Whether to reverse the axis so that the highest number * is closest to the origin. */ reversed?: boolean; /** * (Highcharts, Highstock) If `true`, the first series in a stack will be * drawn on top in a positive, non-reversed Y axis. If `false`, the first * series is in the base of the stack. */ reversedStacks?: boolean; /** * (Highstock, Gantt) Whether to show the first tick label. */ showFirstLabel?: boolean; /** * (Highcharts, Highstock, Gantt) Whether to show the last tick label. * Defaults to `true` on cartesian charts, and `false` on polar charts. */ showLastLabel?: boolean; /** * (Highcharts, Highstock, Gantt) A soft maximum for the axis. If the series * data maximum is less than this, the axis will stay at this maximum, but * if the series data maximum is higher, the axis will flex to show all * data. * * **Note**: The series.softThreshold option takes precedence over this * option. */ softMax?: number; /** * (Highcharts, Highstock, Gantt) A soft minimum for the axis. If the series * data minimum is greater than this, the axis will stay at this minimum, * but if the series data minimum is lower, the axis will flex to show all * data. * * **Note**: The series.softThreshold option takes precedence over this * option. */ softMin?: number; /** * (Highcharts) The stack labels show the total value for each bar in a * stacked column or bar chart. The label will be placed on top of positive * columns and below negative columns. In case of an inverted column chart * or a bar chart the label is placed to the right of positive bars and to * the left of negative bars. */ stackLabels?: NavigatorYAxisStackLabelsOptions; /** * (Highcharts, Highstock, Gantt) For datetime axes, this decides where to * put the tick between weeks. 0 = Sunday, 1 = Monday. */ startOfWeek?: number; /** * (Highcharts, Highstock, Gantt) Whether to force the axis to start on a * tick. Use this option with the `maxPadding` option to control the axis * start. */ startOnTick?: boolean; /** * (Gantt) For vertical axes only. Setting the static scale ensures that * each tick unit is translated into a fixed pixel height. For example, * setting the static scale to 24 results in each Y axis category taking up * 24 pixels, and the height of the chart adjusts. Adding or removing items * will make the chart resize. */ staticScale?: number; /** * (Highcharts) Solid gauge series only. Color stops for the solid gauge. * Use this in cases where a linear gradient between a `minColor` and * `maxColor` is not sufficient. The stops is an array of tuples, where the * first item is a float between 0 and 1 assigning the relative position in * the gradient, and the second item is the color. * * For solid gauges, the Y axis also inherits the concept of data classes * from the Highmaps color axis. */ stops?: Array<[number, ColorString]>; /** * (Highcharts, Highstock, Gantt) The amount of ticks to draw on the axis. * This opens up for aligning the ticks of multiple charts or panes within a * chart. This option overrides the `tickPixelInterval` option. * * This option only has an effect on linear axes. Datetime, logarithmic or * category axes are not affected. */ tickAmount?: number; /** * (Highstock, Gantt) Color for the main tick marks. * * In styled mode, the stroke is given in the `.highcharts-tick` class. */ tickColor?: ColorString; /** * (Highstock, Gantt) The interval of the tick marks in axis units. When * `undefined`, the tick interval is computed to approximately follow the * tickPixelInterval on linear and datetime axes. On categorized axes, a * `undefined` tickInterval will default to 1, one category. Note that * datetime axes are based on milliseconds, so for example an interval of * one day is expressed as `24 * 3600 * 1000`. * * On logarithmic axes, the tickInterval is based on powers, so a * tickInterval of 1 means one tick on each of 0.1, 1, 10, 100 etc. A * tickInterval of 2 means a tick of 0.1, 10, 1000 etc. A tickInterval of * 0.2 puts a tick on 0.1, 0.2, 0.4, 0.6, 0.8, 1, 2, 4, 6, 8, 10, 20, 40 * etc. * * If the tickInterval is too dense for labels to be drawn, Highcharts may * remove ticks. * * If the chart has multiple axes, the alignTicks option may interfere with * the `tickInterval` setting. */ tickInterval?: number; /** * (Highstock, Gantt) The pixel length of the main tick marks. */ tickLength?: number; /** * (Highcharts, Gantt) For categorized axes only. If `on` the tick mark is * placed in the center of the category, if `between` the tick mark is * placed between categories. The default is `between` if the `tickInterval` * is 1, else `on`. */ tickmarkPlacement?: OptionsTickmarkPlacementValue; /** * (Highstock, Gantt) If tickInterval is `null` this option sets the * approximate pixel interval of the tick marks. Not applicable to * categorized axis. * * The tick interval is also influenced by the minTickInterval option, that, * by default prevents ticks from being denser than the data points. */ tickPixelInterval?: number; /** * (Highstock, Gantt) The position of the major tick marks relative to the * axis line. Can be one of `inside` and `outside`. */ tickPosition?: OptionsTickPositionValue; /** * (Highstock, Gantt) A callback function returning array defining where the * ticks are laid out on the axis. This overrides the default behaviour of * tickPixelInterval and tickInterval. The automatic tick positions are * accessible through `this.tickPositions` and can be modified by the * callback. */ tickPositioner?: AxisTickPositionerCallbackFunction; /** * (Highstock, Gantt) An array defining where the ticks are laid out on the * axis. This overrides the default behaviour of tickPixelInterval and * tickInterval. */ tickPositions?: Array<number>; /** * (Highcharts, Highstock, Gantt) The pixel width of the major tick marks. */ tickWidth?: number; /** * (Highstock, Gantt) The axis title, showing next to the axis line. */ title?: NavigatorYAxisTitleOptions; /** * (Highcharts) Parallel coordinates only. Format that will be used for * point.y and available in tooltip.pointFormat as `{point.formattedValue}`. * If not set, `{point.formattedValue}` will use other options, in this * order: * * 1. yAxis.labels.format will be used if set * * 2. If yAxis is a category, then category name will be displayed * * 3. If yAxis is a datetime, then value will use the same format as yAxis * labels * * 4. If yAxis is linear/logarithmic type, then simple value will be used */ tooltipValueFormat?: string; /** * (Highcharts, Gantt) The type of axis. Can be one of `linear`, * `logarithmic`, `datetime`, `category` or `treegrid`. Defaults to * `treegrid` for Gantt charts, `linear` for other chart types. * * In a datetime axis, the numbers are given in milliseconds, and tick marks * are placed on appropriate values, like full hours or days. In a category * or treegrid axis, the point names of the chart's series are used for * categories, if a categories array is not defined. */ type?: AxisTypeValue; /** * (Highcharts, Gantt) Applies only when the axis `type` is `category`. When * `uniqueNames` is true, points are placed on the X axis according to their * names. If the same point name is repeated in the same or another series, * the point is placed on the same X position as other points of the same * name. When `uniqueNames` is false, the points are laid out in increasing * X positions regardless of their names, and the X axis category will take * the name of the last point in each position. */ uniqueNames?: boolean; /** * (Highcharts, Highstock, Gantt) Whether axis, including axis title, line, * ticks and labels, should be visible. */ visible?: boolean; } /** * (Highcharts, Highstock, Gantt) Text labels for the plot bands */ export interface NavigatorYAxisPlotBandsLabelOptions { /** * (Highcharts, Highstock, Gantt) Horizontal alignment of the label. Can be * one of "left", "center" or "right". */ align?: AlignValue; /** * (Highcharts, Highstock, Gantt) Rotation of the text label in degrees . */ rotation?: number; /** * (Highcharts, Highstock, Gantt) CSS styles for the text label. * * In styled mode, the labels are styled by the * `.highcharts-plot-band-label` class. */ style?: CSSObject; /** * (Highcharts, Highstock, Gantt) The string text itself. A subset of HTML * is supported. */ text?: string; /** * (Highcharts, Highstock, Gantt) The text alignment for the label. While * `align` determines where the texts anchor point is placed within the plot * band, `textAlign` determines how the text is aligned against its anchor * point. Possible values are "left", "center" and "right". Defaults to the * same as the `align` option. */ textAlign?: AlignValue; /** * (Highcharts, Highstock, Gantt) Whether to use HTML to render the labels. */ useHTML?: boolean; /** * (Highcharts, Highstock, Gantt) Vertical alignment of the label relative * to the plot band. Can be one of "top", "middle" or "bottom". */ verticalAlign?: VerticalAlignValue; /** * (Highcharts, Highstock, Gantt) Horizontal position relative the * alignment. Default varies by orientation. */ x?: number; /** * (Highcharts, Highstock, Gantt) Vertical position of the text baseline * relative to the alignment. Default varies by orientation. */ y?: number; } /** * (Highcharts, Highstock, Gantt) An array of objects defining plot bands on the * Y axis. */ export interface NavigatorYAxisPlotBandsOptions { /** * (Highcharts, Highstock, Gantt) Border color for the plot band. Also * requires `borderWidth` to be set. */ borderColor?: ColorString; /** * (Highcharts, Highstock, Gantt) Border width for the plot band. Also * requires `borderColor` to be set. */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) A custom class name, in addition to the * default `highcharts-plot-band`, to apply to each individual band. */ className?: string; /** * (Highcharts, Highstock, Gantt) The color of the plot band. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) An object defining mouse events for the * plot band. Supported properties are `click`, `mouseover`, `mouseout`, * `mousemove`. */ events?: any; /** * (Highcharts, Highstock, Gantt) The start position of the plot band in * axis units. */ from?: number; /** * (Highcharts, Highstock, Gantt) An id used for identifying the plot band * in Axis.removePlotBand. */ id?: string; /** * (Highcharts) In a gauge chart, this option determines the inner radius of * the plot band that stretches along the perimeter. It can be given as a * percentage string, like `"100%"`, or as a pixel number, like `100`. By * default, the inner radius is controlled by the thickness option. */ innerRadius?: (number|string); /** * (Highcharts, Highstock, Gantt) Text labels for the plot bands */ label?: NavigatorYAxisPlotBandsLabelOptions; /** * (Highcharts) In a gauge chart, this option determines the outer radius of * the plot band that stretches along the perimeter. It can be given as a * percentage string, like `"100%"`, or as a pixel number, like `100`. */ outerRadius?: (number|string); /** * (Highcharts) In a gauge chart, this option sets the width of the plot * band stretching along the perimeter. It can be given as a percentage * string, like `"10%"`, or as a pixel number, like `10`. The default value * 10 is the same as the default tickLength, thus making the plot band act * as a background for the tick markers. */ thickness?: (number|string); /** * (Highcharts, Highstock, Gantt) The end position of the plot band in axis * units. */ to?: number; /** * (Highcharts, Highstock, Gantt) The z index of the plot band within the * chart, relative to other elements. Using the same z index as another * element may give unpredictable results, as the last rendered element will * be on top. Values from 0 to 20 make sense. */ zIndex?: number; } /** * (Highcharts, Highstock, Gantt) Text labels for the plot bands */ export interface NavigatorYAxisPlotLinesLabelOptions { /** * (Highcharts, Highstock, Gantt) Horizontal alignment of the label. Can be * one of "left", "center" or "right". */ align?: AlignValue; /** * (Highcharts, Highstock, Gantt) Rotation of the text label in degrees. * Defaults to 0 for horizontal plot lines and 90 for vertical lines. */ rotation?: number; /** * (Highcharts, Highstock, Gantt) CSS styles for the text label. * * In styled mode, the labels are styled by the * `.highcharts-plot-line-label` class. */ style?: CSSObject; /** * (Highcharts, Highstock, Gantt) The text itself. A subset of HTML is * supported. */ text?: string; /** * (Highcharts, Highstock, Gantt) The text alignment for the label. While * `align` determines where the texts anchor point is placed within the plot * band, `textAlign` determines how the text is aligned against its anchor * point. Possible values are "left", "center" and "right". Defaults to the * same as the `align` option. */ textAlign?: AlignValue; /** * (Highcharts, Highstock, Gantt) Whether to use HTML to render the labels. */ useHTML?: boolean; /** * (Highcharts, Highstock, Gantt) Vertical alignment of the label relative * to the plot line. Can be one of "top", "middle" or "bottom". */ verticalAlign?: VerticalAlignValue; /** * (Highcharts, Highstock, Gantt) Horizontal position relative the * alignment. Default varies by orientation. */ x?: number; /** * (Highcharts, Highstock, Gantt) Vertical position of the text baseline * relative to the alignment. Default varies by orientation. */ y?: number; } /** * (Highcharts, Highstock, Gantt) An array of objects representing plot lines on * the X axis */ export interface NavigatorYAxisPlotLinesOptions { /** * (Highcharts, Highstock, Gantt) A custom class name, in addition to the * default `highcharts-plot-line`, to apply to each individual line. */ className?: string; /** * (Highcharts, Highstock, Gantt) The color of the line. */ color?: ColorString; /** * (Highcharts, Highstock, Gantt) The dashing or dot style for the plot * line. For possible values see this overview. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock, Gantt) An object defining mouse events for the * plot line. Supported properties are `click`, `mouseover`, `mouseout`, * `mousemove`. */ events?: any; /** * (Highcharts, Highstock, Gantt) An id used for identifying the plot line * in Axis.removePlotLine. */ id?: string; /** * (Highcharts, Highstock, Gantt) Text labels for the plot bands */ label?: NavigatorYAxisPlotLinesLabelOptions; /** * (Highcharts, Highstock, Gantt) The position of the line in axis units. */ value?: number; /** * (Highcharts, Highstock, Gantt) The width or thickness of the plot line. */ width?: number; /** * (Highcharts, Highstock, Gantt) The z index of the plot line within the * chart. */ zIndex?: number; } /** * (Highcharts) The stack labels show the total value for each bar in a stacked * column or bar chart. The label will be placed on top of positive columns and * below negative columns. In case of an inverted column chart or a bar chart * the label is placed to the right of positive bars and to the left of negative * bars. */ export interface NavigatorYAxisStackLabelsOptions { /** * (Highcharts) Defines the horizontal alignment of the stack total label. * Can be one of `"left"`, `"center"` or `"right"`. The default value is * calculated at runtime and depends on orientation and whether the stack is * positive or negative. */ align?: AlignValue; /** * (Highcharts) Allow the stack labels to overlap. */ allowOverlap?: boolean; /** * (Highcharts) Enable or disable the stack total labels. */ enabled?: boolean; /** * (Highcharts, Highstock) A format string for the data label. Available * variables are the same as for `formatter`. */ format?: string; /** * (Highcharts) Callback JavaScript function to format the label. The value * is given by `this.total`. */ formatter?: FormatterCallbackFunction<StackItemObject>; /** * (Highcharts) Rotation of the labels in degrees. */ rotation?: number; /** * (Highcharts) CSS styles for the label. * * In styled mode, the styles are set in the `.highcharts-stack-label` * class. */ style?: CSSObject; /** * (Highcharts) The text alignment for the label. While `align` determines * where the texts anchor point is placed with regards to the stack, * `textAlign` determines how the text is aligned against its anchor point. * Possible values are `"left"`, `"center"` and `"right"`. The default value * is calculated at runtime and depends on orientation and whether the stack * is positive or negative. */ textAlign?: AlignValue; /** * (Highcharts, Highstock) Whether to use HTML to render the labels. */ useHTML?: boolean; /** * (Highcharts) Defines the vertical alignment of the stack total label. Can * be one of `"top"`, `"middle"` or `"bottom"`. The default value is * calculated at runtime and depends on orientation and whether the stack is * positive or negative. */ verticalAlign?: VerticalAlignValue; /** * (Highcharts) The x position offset of the label relative to the left of * the stacked bar. The default value is calculated at runtime and depends * on orientation and whether the stack is positive or negative. */ x?: number; /** * (Highcharts) The y position offset of the label relative to the tick * position on the axis. The default value is calculated at runtime and * depends on orientation and whether the stack is positive or negative. */ y?: number; } /** * (Highstock, Gantt) The axis title, showing next to the axis line. */ export interface NavigatorYAxisTitleOptions { /** * (Highstock, Gantt) Alignment of the title relative to the axis values. * Possible values are "low", "middle" or "high". */ align?: AxisTitleAlignValue; /** * (Highcharts) Deprecated. Set the `text` to `null` to disable the title. */ enabled?: string; /** * (Highstock, Gantt) The pixel distance between the axis labels and the * title. Positive values are outside the axis line, negative are inside. */ margin?: number; /** * (Highstock, Gantt) The distance of the axis title from the axis line. By * default, this distance is computed from the offset width of the labels, * the labels' distance from the axis and the title's margin. However when * the offset option is set, it overrides all this. */ offset?: number; /** * (Highcharts) Defines how the title is repositioned according to the 3D * chart orientation. * * - `'offset'`: Maintain a fixed horizontal/vertical distance from the tick * marks, despite the chart orientation. This is the backwards compatible * behavior, and causes skewing of X and Z axes. * * - `'chart'`: Preserve 3D position relative to the chart. This looks nice, * but hard to read if the text isn't forward-facing. * * - `'flap'`: Rotated text along the axis to compensate for the chart * orientation. This tries to maintain text as legible as possible on all * orientations. * * - `'ortho'`: Rotated text along the axis direction so that the labels are * orthogonal to the axis. This is very similar to `'flap'`, but prevents * skewing the labels (X and Y scaling are still present). * * - `undefined`: Will use the config from `labels.position3d` */ position3d?: ("chart"|"flap"|"offset"|"ortho"|null); /** * (Highcharts, Highstock, Gantt) Whether to reserve space for the title * when laying out the axis. */ reserveSpace?: boolean; /** * (Highstock, Gantt) The rotation of the text in degrees. 0 is horizontal, * 270 is vertical reading from bottom to top. */ rotation?: number; /** * (Highcharts) If enabled, the axis title will skewed to follow the * perspective. * * This will fix overlapping labels and titles, but texts become less * legible due to the distortion. * * The final appearance depends heavily on `title.position3d`. * * A `null` value will use the config from `labels.skew3d`. */ skew3d?: (boolean|null); /** * (Highstock, Gantt) CSS styles for the title. If the title text is longer * than the axis length, it will wrap to multiple lines by default. This can * be customized by setting `textOverflow: 'ellipsis'`, by setting a * specific `width` or by setting `whiteSpace: 'nowrap'`. * * In styled mode, the stroke width is given in the `.highcharts-axis-title` * class. */ style?: CSSObject; /** * (Highcharts, Highstock, Gantt) The actual text of the axis title. * Horizontal texts can contain HTML, but rotated texts are painted using * vector techniques and must be clean text. The Y axis title is disabled by * setting the `text` option to `undefined`. */ text?: any; /** * (Highstock, Gantt) Alignment of the text, can be `"left"`, `"right"` or * `"center"`. Default alignment depends on the title.align: * * Horizontal axes: * * - for `align` = `"low"`, `textAlign` is set to `left` * * - for `align` = `"middle"`, `textAlign` is set to `center` * * - for `align` = `"high"`, `textAlign` is set to `right` * * Vertical axes: * * - for `align` = `"low"` and `opposite` = `true`, `textAlign` is set to * `right` * * - for `align` = `"low"` and `opposite` = `false`, `textAlign` is set to * `left` * * - for `align` = `"middle"`, `textAlign` is set to `center` * * - for `align` = `"high"` and `opposite` = `true` `textAlign` is set to * `left` * * - for `align` = `"high"` and `opposite` = `false` `textAlign` is set to * `right` */ textAlign?: AlignValue; /** * (Highcharts, Highstock, Gantt) Whether to use HTML to render the axis * title. */ useHTML?: boolean; /** * (Highcharts, Highstock, Gantt) Horizontal pixel offset of the title * position. */ x?: number; /** * (Highcharts, Highstock, Gantt) Vertical pixel offset of the title * position. */ y?: number; } /** * (Highcharts, Highstock, Gantt) Options for displaying a message like "No data * to display". This feature requires the file no-data-to-display.js to be * loaded in the page. The actual text to display is set in the lang.noData * option. */ export interface NoDataOptions { /** * (Highcharts, Highstock, Gantt) An object of additional SVG attributes for * the no-data label. */ attr?: SVGAttributes; /** * (Highcharts, Highstock, Gantt) The position of the no-data label, * relative to the plot area. */ position?: (AlignObject|NoDataPositionOptions); /** * (Highcharts, Highstock, Gantt) CSS styles for the no-data label. */ style?: CSSObject; /** * (Highcharts, Highstock, Gantt) Whether to insert the label as HTML, or as * pseudo-HTML rendered with SVG. */ useHTML?: boolean; } /** * (Highcharts, Highstock, Gantt) The position of the no-data label, relative to * the plot area. */ export interface NoDataPositionOptions { /** * (Highcharts, Highstock, Gantt) Horizontal alignment of the label. */ align?: AlignValue; /** * (Highcharts, Highstock, Gantt) Vertical alignment of the label. */ verticalAlign?: VerticalAlignValue; /** * (Highcharts, Highstock, Gantt) Horizontal offset of the label, in pixels. */ x?: number; /** * (Highcharts, Highstock, Gantt) Vertical offset of the label, in pixels. */ y?: number; } /** * Normalized interval. */ export interface NormalizedIntervalObject { /** * The count. */ count: number; /** * The interval in axis values (ms). */ unitRange: number; } /** * An object containing `left` and `top` properties for the position in the * page. */ export interface OffsetObject { /** * Left distance to the page border. */ left: number; /** * Top distance to the page border. */ top: number; } export interface Options { /** * (Highcharts, Highstock, Highmaps, Gantt) Options for configuring * accessibility for the chart. Requires the accessibility module to be * loaded. For a description of the module and information on its features, * see Highcharts Accessibility. */ accessibility?: AccessibilityOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) Options for configuring * annotations, for example labels, arrows or shapes. Annotations can be * tied to points, axis coordinates or chart pixel coordinates. */ annotations?: Array<AnnotationsOptions>; boost?: BoostOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) General options for the chart. */ chart?: ChartOptions; /** * (Highcharts, Highmaps) A color axis for choropleth maps and heat maps. * Visually, the color axis will appear as a gradient or as separate items * inside the legend, depending on whether the axis is scalar or based on * data classes. * * For supported color formats, see the docs article about colors. * * A scalar color axis is represented by a gradient. The colors either range * between the minColor and the maxColor, or for more fine grained control * the colors can be defined in stops. Often times, the color axis needs to * be adjusted to get the right color spread for the data. In addition to * stops, consider using a logarithmic axis type, or setting min and max to * avoid the colors being determined by outliers. * * When dataClasses are used, the ranges are subdivided into separate * classes like categories based on their values. This can be used for * ranges between two values, but also for a true category. However, when * your data is categorized, it may be as convenient to add each category to * a separate series. * * See the Axis object for programmatic access to the axis. */ colorAxis?: ColorAxisOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) An array containing the default * colors for the chart's series. When all colors are used, new colors are * pulled from the start again. * * Default colors can also be set on a series or series.type basis, see * column.colors, pie.colors. * * In styled mode, the colors option doesn't exist. Instead, colors are * defined in CSS and applied either through series or point class names, or * through the chart.colorCount option. * * ### Legacy * * In Highcharts 3.x, the default colors were: * * (see online documentation for example) * * In Highcharts 2.x, the default colors were: * * (see online documentation for example) */ colors?: Array<ColorString>; /** * (Gantt) The Pathfinder module allows you to define connections between * any two points, represented as lines - optionally with markers for the * start and/or end points. Multiple algorithms are available for * calculating how the connecting lines are drawn. * * Connector functionality requires Highcharts Gantt to be loaded. In Gantt * charts, the connectors are used to draw dependencies between tasks. */ connectors?: ConnectorsOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) Highchart by default puts a * credits label in the lower right corner of the chart. This can be changed * using these options. */ credits?: CreditsOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) The Data module provides a * simplified interface for adding data to a chart from sources like CVS, * HTML tables or grid views. See also the tutorial article on the Data * module. * * It requires the `modules/data.js` file to be loaded. * * Please note that the default way of adding data in Highcharts, without * the need of a module, is through the series.data option. */ data?: DataOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) Styled mode only. Configuration * object for adding SVG definitions for reusable elements. See gradients, * shadows and patterns for more information and code examples. */ defs?: any; /** * (Highcharts, Highstock, Highmaps) Options for drill down, the concept of * inspecting increasingly high resolution data through clicking on chart * items like columns or pie slices. * * The drilldown feature requires the drilldown.js file to be loaded, found * in the modules directory of the download package, or online at * code.highcharts.com/modules/drilldown.js. */ drilldown?: DrilldownOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) Options for the exporting * module. For an overview on the matter, see the docs. */ exporting?: ExportingOptions; global?: GlobalOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) HTML labels that can be * positioned anywhere in the chart area. */ labels?: LabelsOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) Language object. The language * object is global and it can't be set on each chart initialization. * Instead, use `Highcharts.setOptions` to set it before any chart is * initialized. * * (see online documentation for example) */ lang?: LangOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) The legend is a box containing a * symbol and name for each series item or point item in the chart. Each * series (or points in case of pie charts) is represented by a symbol and * its name in the legend. * * It is possible to override the symbol creator function and create custom * legend symbols. */ legend?: LegendOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) The loading options control the * appearance of the loading screen that covers the plot area on chart * operations. This screen only appears after an explicit call to * `chart.showLoading()`. It is a utility for developers to communicate to * the end user that something is going on, for example while retrieving new * data via an XHR connection. The "Loading..." text itself is not part of * this configuration object, but part of the `lang` object. */ loading?: LoadingOptions; mapNavigation?: MapNavigationOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) A collection of options for * buttons and menus appearing in the exporting module. */ navigation?: NavigationOptions; /** * (Highstock, Gantt) The navigator is a small series below the main series, * displaying a view of the entire data set. It provides tools to zoom in * and out on parts of the data as well as panning across the dataset. */ navigator?: NavigatorOptions; /** * (Highcharts, Highstock, Gantt) Options for displaying a message like "No * data to display". This feature requires the file no-data-to-display.js to * be loaded in the page. The actual text to display is set in the * lang.noData option. */ noData?: NoDataOptions; /** * (Highcharts) The pane serves as a container for axes and backgrounds for * circular gauges and polar charts. */ pane?: PaneOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) The plotOptions is a wrapper * object for config objects for each series type. The config objects for * each series can also be overridden for each series item as given in the * series array. * * Configuration options for the series are given in three levels. Options * for all series in a chart are given in the plotOptions.series object. * Then options for all series of a specific type are given in the * plotOptions of that type, for example `plotOptions.line`. Next, options * for one single series are given in the series array. */ plotOptions?: PlotOptions; /** * (Highstock, Gantt) The range selector is a tool for selecting ranges to * display within the chart. It provides buttons to select preconfigured * ranges in the chart, like 1 day, 1 week, 1 month etc. It also provides * input boxes where min and max dates can be manually input. */ rangeSelector?: RangeSelectorOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) Allows setting a set of rules to * apply for different screen or chart sizes. Each rule specifies additional * chart options. */ responsive?: ResponsiveOptions; /** * (Highstock, Gantt) The scrollbar is a means of panning over the X axis of * a stock chart. Scrollbars can also be applied to other types of axes. * * Another approach to scrollable charts is the chart.scrollablePlotArea * option that is especially suitable for simpler cartesian charts on * mobile. * * In styled mode, all the presentational options for the scrollbar are * replaced by the classes `.highcharts-scrollbar-thumb`, * `.highcharts-scrollbar-arrow`, `.highcharts-scrollbar-button`, * `.highcharts-scrollbar-rifles` and `.highcharts-scrollbar-track`. */ scrollbar?: ScrollbarOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) Series options for specific data * and the data itself. In TypeScript you have to cast the series options to * specific series types, to get all possible options for a series. */ series?: Array<SeriesOptionsType>; /** * (Highstock) Configure the stockTools gui strings in the chart. Requires * the [stockTools module]() to be loaded. For a description of the module * and information on its features, see [Highcharts StockTools](). */ stockTools?: (object|StockToolsOptions); /** * (Highcharts, Highstock, Highmaps, Gantt) The chart's subtitle. This can * be used both to display a subtitle below the main title, and to display * random text anywhere in the chart. The subtitle can be updated after * chart initialization through the `Chart.setTitle` method. */ subtitle?: SubtitleOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) Time options that can apply * globally or to individual charts. These settings affect how `datetime` * axes are laid out, how tooltips are formatted, how series * pointIntervalUnit works and how the Highstock range selector handles * time. * * The common use case is that all charts in the same Highcharts object * share the same time settings, in which case the global settings are set * using `setOptions`.(see online documentation for example) * * Since v6.0.5, the time options were moved from the `global` obect to the * `time` object, and time options can be set on each individual chart. */ time?: TimeOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) The chart's main title. */ title?: TitleOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) Options for the tooltip that * appears when the user hovers over a series or point. */ tooltip?: TooltipOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) The X axis or category axis. * Normally this is the horizontal axis, though if the chart is inverted * this is the vertical axis. In case of multiple axes, the xAxis node is an * array of configuration objects. * * See the Axis class for programmatic access to the axis. */ xAxis?: (XAxisOptions|Array<XAxisOptions>); /** * (Highcharts, Highstock, Highmaps, Gantt) The Y axis or value axis. * Normally this is the vertical axis, though if the chart is inverted this * is the horizontal axis. In case of multiple axes, the yAxis node is an * array of configuration objects. * * See the Axis object for programmatic access to the axis. */ yAxis?: (YAxisOptions|Array<YAxisOptions>); /** * (Highcharts) The Z axis or depth axis for 3D plots. * * See the Axis class for programmatic access to the axis. */ zAxis?: (ZAxisOptions|Array<ZAxisOptions>); } /** * (Highcharts) An array of background items for the pane. */ export interface PaneBackgroundOptions { /** * (Highcharts) The background color or gradient for the pane. */ backgroundColor?: GradientColorObject; /** * (Highcharts) The pane background border color. */ borderColor?: ColorString; /** * (Highcharts) The pixel border width of the pane background. */ borderWidth?: number; /** * (Highcharts) The class name for this background. */ className?: string; /** * (Highcharts) The inner radius of the pane background. Can be either * numeric (pixels) or a percentage string. */ innerRadius?: (number|string); /** * (Highcharts) The outer radius of the circular pane background. Can be * either numeric (pixels) or a percentage string. */ outerRadius?: (number|string); /** * (Highcharts) The shape of the pane background. When `solid`, the * background is circular. When `arc`, the background extends only from the * min to the max of the value axis. */ shape?: PaneBackgroundShapeValue; } /** * (Highcharts) The pane serves as a container for axes and backgrounds for * circular gauges and polar charts. */ export interface PaneOptions { /** * (Highcharts) An array of background items for the pane. */ background?: Array<PaneBackgroundOptions>; /** * (Highcharts) The center of a polar chart or angular gauge, given as an * array of [x, y] positions. Positions can be given as integers that * transform to pixels, or as percentages of the plot area size. */ center?: Array<(string|number)>; /** * (Highcharts) The end angle of the polar X axis or gauge value axis, given * in degrees where 0 is north. Defaults to startAngle * * + 360. */ endAngle?: number; /** * (Highcharts) The size of the pane, either as a number defining pixels, or * a percentage defining a percentage of the plot are. */ size?: (number|string); /** * (Highcharts) The start angle of the polar X axis or gauge axis, given in * degrees where 0 is north. Defaults to 0. */ startAngle?: number; } /** * Holds a pattern definition. */ export interface PatternObject { /** * Animation options for the image pattern loading. */ animation?: (boolean|AnimationOptionsObject); /** * Pattern options */ pattern: PatternOptionsObject; } /** * Pattern options */ export interface PatternOptionsObject { /** * For automatically calculated width and height on images, it is possible * to set an aspect ratio. The image will be zoomed to fill the bounding * box, maintaining the aspect ratio defined. */ aspectRatio: number; /** * Pattern color, used as default path stroke. */ color: ColorString; /** * Analogous to pattern.width. */ height: number; /** * ID to assign to the pattern. This is automatically computed if not added, * and identical patterns are reused. To refer to an existing pattern for a * Highcharts color, use `color: "url(#pattern-id)"`. */ id: string; /** * URL to an image to use as the pattern. */ image: string; /** * Opacity of the pattern as a float value from 0 to 1. */ opacity: number; /** * Either an SVG path as string, or an object. As an object, supply the path * string in the `path.d` property. Other supported properties are standard * SVG attributes like `path.stroke` and `path.fill`. If a path is supplied * for the pattern, the `image` property is ignored. */ path: (string|SVGAttributes); /** * Width of the pattern. For images this is automatically set to the width * of the element bounding box if not supplied. For non-image patterns the * default is 32px. Note that automatic resizing of image patterns to fill a * bounding box dynamically is only supported for patterns with an * automatically calculated ID. */ with: number; /** * Horizontal offset of the pattern. Defaults to 0. */ x?: number; /** * Vertical offset of the pattern. Defaults to 0. */ y?: number; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotAbandsAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotAbandsAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotAbandsAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotAbandsAnimationOptions { duration?: number; } export interface PlotAbandsBottomLineOptions { styles?: PlotAbandsBottomLineStylesOptions; } export interface PlotAbandsBottomLineStylesOptions { /** * (Highstock) Pixel width of the line. */ lineWidth?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotAbandsConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotAbandsConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotAbandsConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotAbandsConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotAbandsConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotAbandsConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotAbandsConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotAbandsDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: string; /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotAbandsDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotAbandsDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotAbandsDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotAbandsDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotAbandsDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotAbandsDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotAbandsDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotAbandsEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotAbandsLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotAbandsLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotAbandsLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotAbandsLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotAbandsLastVisiblePriceLabelOptions; } /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotAbandsMarkerOptions { /** * (Highstock) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highstock) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highstock) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. */ radius?: number; /** * (Highstock) States for a single point marker. */ states?: PlotAbandsMarkerStatesOptions; /** * (Highstock) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highstock) Animation when hovering over the marker. */ export interface PlotAbandsMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highstock) The hover state for a single point marker. */ export interface PlotAbandsMarkerStatesHoverOptions { /** * (Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotAbandsMarkerStatesHoverAnimationOptions); /** * (Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highstock) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotAbandsMarkerStatesInactiveOptions { /** * (Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highstock) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotAbandsMarkerStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highstock) States for a single point marker. */ export interface PlotAbandsMarkerStatesOptions { /** * (Highstock) The hover state for a single point marker. */ hover?: PlotAbandsMarkerStatesHoverOptions; inactive?: PlotAbandsMarkerStatesInactiveOptions; /** * (Highstock) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotAbandsMarkerStatesNormalOptions; /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotAbandsMarkerStatesSelectOptions; } /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotAbandsMarkerStatesSelectOptions { /** * (Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Acceleration bands (ABANDS). This series requires the `linkedTo` * option to be set and should be loaded after the * `stock/indicators/indicators.js`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `abands` series are defined in plotOptions.abands. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotAbandsOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotAbandsAccessibilityOptions); /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotAbandsAnimationOptions); /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; bottomLine?: PlotAbandsBottomLineOptions; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highstock) Whether to compare indicator to the main series values or * indicator values. */ compareToMain?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotAbandsConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotAbandsDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotAbandsDragDropOptions; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotAbandsEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotAbandsLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotAbandsLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotAbandsLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The main series ID that indicator will be * based on. Required for this indicator. */ linkedTo?: string; /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotAbandsMarkerOptions; /** * (Highstock) The name of the series as shown in the legend, tooltip etc. * If not set, it will be based on a technical indicator type and default * params. */ name?: string; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Paramters used in calculation of regression series' points. */ params?: PlotAbandsParamsOptions; /** * (Highstock) Properties for each single point. */ point?: PlotAbandsPointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotAbandsStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotAbandsTooltipOptions; topLine?: PlotAbandsTopLineOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotAbandsZonesOptions>; } /** * (Highstock) Paramters used in calculation of regression series' points. */ export interface PlotAbandsParamsOptions { /** * (Highstock) The algorithms factor value used to calculate bands. */ factor?: number; /** * (Highstock) The point index which indicator calculations will base. For * example using OHLC data, index=2 means the indicator will be calculated * using Low values. */ index?: number; /** * (Highstock) The base period for indicator calculations. This is the * number of data points which are taken into account for the indicator * calculations. */ period?: number; } /** * (Highstock) Events for each single point. */ export interface PlotAbandsPointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotAbandsPointOptions { /** * (Highstock) Events for each single point. */ events?: PlotAbandsPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotAbandsStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotAbandsStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotAbandsStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotAbandsStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotAbandsStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotAbandsStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotAbandsStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotAbandsStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotAbandsStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotAbandsStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotAbandsStatesHoverMarkerStatesHoverOptions; inactive?: PlotAbandsStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotAbandsStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotAbandsStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotAbandsStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotAbandsStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotAbandsStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotAbandsStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotAbandsStatesHoverMarkerOptions; } export interface PlotAbandsStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotAbandsStatesInactiveOptions { animation?: PlotAbandsStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotAbandsStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotAbandsStatesOptions { /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotAbandsStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotAbandsStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotAbandsStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotAbandsStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotAbandsStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotAbandsStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotAbandsStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotAbandsStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotAbandsStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotAbandsStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotAbandsStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotAbandsStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotAbandsStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotAbandsStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotAbandsStatesSelectMarkerStatesHoverOptions; inactive?: PlotAbandsStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotAbandsStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotAbandsStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotAbandsStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotAbandsStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotAbandsStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotAbandsStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotAbandsStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotAbandsTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotAbandsTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotAbandsTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) Number of decimals in indicator series. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } export interface PlotAbandsTopLineOptions { styles?: PlotAbandsTopLineStylesOptions; } export interface PlotAbandsTopLineStylesOptions { /** * (Highstock) Pixel width of the line. */ lineWidth?: number; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotAbandsZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotAdAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotAdAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotAdAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotAdAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotAdConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotAdConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotAdConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotAdConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotAdConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotAdConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotAdConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotAdDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotAdDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotAdDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotAdDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotAdDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotAdDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotAdDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotAdDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotAdEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotAdLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotAdLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotAdLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotAdLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotAdLastVisiblePriceLabelOptions; } /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotAdMarkerOptions { /** * (Highstock) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highstock) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highstock) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. */ radius?: number; /** * (Highstock) States for a single point marker. */ states?: PlotAdMarkerStatesOptions; /** * (Highstock) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highstock) Animation when hovering over the marker. */ export interface PlotAdMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highstock) The hover state for a single point marker. */ export interface PlotAdMarkerStatesHoverOptions { /** * (Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotAdMarkerStatesHoverAnimationOptions); /** * (Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highstock) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotAdMarkerStatesInactiveOptions { /** * (Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highstock) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotAdMarkerStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highstock) States for a single point marker. */ export interface PlotAdMarkerStatesOptions { /** * (Highstock) The hover state for a single point marker. */ hover?: PlotAdMarkerStatesHoverOptions; inactive?: PlotAdMarkerStatesInactiveOptions; /** * (Highstock) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotAdMarkerStatesNormalOptions; /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotAdMarkerStatesSelectOptions; } /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotAdMarkerStatesSelectOptions { /** * (Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Accumulation Distribution (AD). This series requires `linkedTo` * option to be set. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `ad` series are defined in plotOptions.ad. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotAdOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotAdAccessibilityOptions); /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotAdAnimationOptions); /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highstock) Whether to compare indicator to the main series values or * indicator values. */ compareToMain?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotAdConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotAdDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotAdDragDropOptions; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotAdEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotAdLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotAdLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotAdLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The main series ID that indicator will be * based on. Required for this indicator. */ linkedTo?: string; /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotAdMarkerOptions; /** * (Highstock) The name of the series as shown in the legend, tooltip etc. * If not set, it will be based on a technical indicator type and default * params. */ name?: string; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Paramters used in calculation of regression series' points. */ params?: PlotAdParamsOptions; /** * (Highstock) Properties for each single point. */ point?: PlotAdPointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotAdStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotAdTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotAdZonesOptions>; } /** * (Highstock) Paramters used in calculation of regression series' points. */ export interface PlotAdParamsOptions { /** * (Highstock) The point index which indicator calculations will base. For * example using OHLC data, index=2 means the indicator will be calculated * using Low values. */ index?: number; /** * (Highstock) The base period for indicator calculations. This is the * number of data points which are taken into account for the indicator * calculations. */ period?: number; /** * (Highstock) The id of volume series which is mandatory. For example using * OHLC data, volumeSeriesID='volume' means the indicator will be calculated * using OHLC and volume values. */ volumeSeriesID?: string; } /** * (Highstock) Events for each single point. */ export interface PlotAdPointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotAdPointOptions { /** * (Highstock) Events for each single point. */ events?: PlotAdPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotAdStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotAdStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotAdStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotAdStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotAdStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotAdStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotAdStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotAdStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotAdStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotAdStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotAdStatesHoverMarkerStatesHoverOptions; inactive?: PlotAdStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotAdStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotAdStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotAdStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotAdStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotAdStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotAdStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotAdStatesHoverMarkerOptions; } export interface PlotAdStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotAdStatesInactiveOptions { animation?: PlotAdStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotAdStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotAdStatesOptions { /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotAdStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotAdStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotAdStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotAdStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotAdStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotAdStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotAdStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotAdStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotAdStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotAdStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotAdStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotAdStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotAdStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotAdStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotAdStatesSelectMarkerStatesHoverOptions; inactive?: PlotAdStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotAdStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotAdStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotAdStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotAdStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotAdStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotAdStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotAdStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotAdTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotAdTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotAdTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) Number of decimals in indicator series. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotAdZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotAoAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotAoAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotAoAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotAoAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotAoConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotAoConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotAoConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotAoConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotAoConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotAoConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotAoConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotAoDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotAoDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotAoDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotAoDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotAoDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotAoDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotAoDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotAoDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotAoEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotAoLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotAoLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotAoLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotAoLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotAoLastVisiblePriceLabelOptions; } /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotAoMarkerOptions { /** * (Highstock) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highstock) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highstock) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. */ radius?: number; /** * (Highstock) States for a single point marker. */ states?: PlotAoMarkerStatesOptions; /** * (Highstock) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highstock) Animation when hovering over the marker. */ export interface PlotAoMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highstock) The hover state for a single point marker. */ export interface PlotAoMarkerStatesHoverOptions { /** * (Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotAoMarkerStatesHoverAnimationOptions); /** * (Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highstock) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotAoMarkerStatesInactiveOptions { /** * (Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highstock) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotAoMarkerStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highstock) States for a single point marker. */ export interface PlotAoMarkerStatesOptions { /** * (Highstock) The hover state for a single point marker. */ hover?: PlotAoMarkerStatesHoverOptions; inactive?: PlotAoMarkerStatesInactiveOptions; /** * (Highstock) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotAoMarkerStatesNormalOptions; /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotAoMarkerStatesSelectOptions; } /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotAoMarkerStatesSelectOptions { /** * (Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Awesome Oscillator. This series requires the `linkedTo` option to * be set and should be loaded after the `stock/indicators/indicators.js` * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `ao` series are defined in plotOptions.ao. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotAoOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotAoAccessibilityOptions); /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotAoAnimationOptions); /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highstock) Whether to compare indicator to the main series values or * indicator values. */ compareToMain?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotAoConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotAoDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotAoDragDropOptions; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotAoEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highstock) Color of the Awesome oscillator series bar that is greater * than the previous one. Note that if a `color` is defined, the `color` * takes precedence and the `greaterBarColor` is ignored. */ greaterBarColor?: (ColorString|GradientColorObject|PatternObject); groupPadding?: number; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotAoLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotAoLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotAoLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The main series ID that indicator will be * based on. Required for this indicator. */ linkedTo?: string; /** * (Highstock) Color of the Awesome oscillator series bar that is lower than * the previous one. Note that if a `color` is defined, the `color` takes * precedence and the `lowerBarColor` is ignored. */ lowerBarColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotAoMarkerOptions; /** * (Highstock) The name of the series as shown in the legend, tooltip etc. * If not set, it will be based on a technical indicator type and default * params. */ name?: string; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Properties for each single point. */ point?: PlotAoPointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; pointPadding?: number; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotAoStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotAoTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotAoZonesOptions>; } /** * (Highstock) Events for each single point. */ export interface PlotAoPointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotAoPointOptions { /** * (Highstock) Events for each single point. */ events?: PlotAoPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotAoStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotAoStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotAoStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotAoStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotAoStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotAoStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotAoStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotAoStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotAoStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotAoStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotAoStatesHoverMarkerStatesHoverOptions; inactive?: PlotAoStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotAoStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotAoStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotAoStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotAoStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotAoStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: PlotAoStatesHoverHaloOptions; /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotAoStatesHoverMarkerOptions; } export interface PlotAoStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotAoStatesInactiveOptions { animation?: PlotAoStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotAoStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotAoStatesOptions { /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotAoStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotAoStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotAoStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotAoStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotAoStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotAoStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotAoStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotAoStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotAoStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotAoStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotAoStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotAoStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotAoStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotAoStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotAoStatesSelectMarkerStatesHoverOptions; inactive?: PlotAoStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotAoStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotAoStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotAoStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotAoStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotAoStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotAoStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotAoStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotAoTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotAoTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotAoTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) Number of decimals in indicator series. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotAoZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotApoAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotApoAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotApoAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotApoAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotApoConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotApoConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotApoConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotApoConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotApoConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotApoConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotApoConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotApoDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotApoDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotApoDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotApoDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotApoDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotApoDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotApoDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotApoDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotApoEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotApoLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotApoLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotApoLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotApoLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotApoLastVisiblePriceLabelOptions; } /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotApoMarkerOptions { /** * (Highstock) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highstock) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highstock) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. */ radius?: number; /** * (Highstock) States for a single point marker. */ states?: PlotApoMarkerStatesOptions; /** * (Highstock) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highstock) Animation when hovering over the marker. */ export interface PlotApoMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highstock) The hover state for a single point marker. */ export interface PlotApoMarkerStatesHoverOptions { /** * (Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotApoMarkerStatesHoverAnimationOptions); /** * (Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highstock) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotApoMarkerStatesInactiveOptions { /** * (Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highstock) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotApoMarkerStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highstock) States for a single point marker. */ export interface PlotApoMarkerStatesOptions { /** * (Highstock) The hover state for a single point marker. */ hover?: PlotApoMarkerStatesHoverOptions; inactive?: PlotApoMarkerStatesInactiveOptions; /** * (Highstock) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotApoMarkerStatesNormalOptions; /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotApoMarkerStatesSelectOptions; } /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotApoMarkerStatesSelectOptions { /** * (Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Absolute Price Oscillator. This series requires the `linkedTo` * option to be set and should be loaded after the * `stock/indicators/indicators.js` and `stock/indicators/ema.js`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `apo` series are defined in plotOptions.apo. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotApoOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotApoAccessibilityOptions); /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotApoAnimationOptions); /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highstock) Whether to compare indicator to the main series values or * indicator values. */ compareToMain?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotApoConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotApoDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotApoDragDropOptions; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotApoEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotApoLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotApoLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotApoLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The main series ID that indicator will be * based on. Required for this indicator. */ linkedTo?: string; /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotApoMarkerOptions; /** * (Highstock) The name of the series as shown in the legend, tooltip etc. * If not set, it will be based on a technical indicator type and default * params. */ name?: string; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Paramters used in calculation of Absolute Price Oscillator * series points. */ params?: PlotApoParamsOptions; /** * (Highstock) Properties for each single point. */ point?: PlotApoPointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotApoStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotApoTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotApoZonesOptions>; } /** * (Highstock) Paramters used in calculation of Absolute Price Oscillator series * points. */ export interface PlotApoParamsOptions { /** * (Highstock) The point index which indicator calculations will base. For * example using OHLC data, index=2 means the indicator will be calculated * using Low values. * * By default index value used to be set to 0. Since Highstock 7 by default * index is set to 3 which means that the ema indicator will be calculated * using Close values. */ index?: number; /** * (Highstock) Periods for Absolute Price Oscillator calculations. */ periods?: Array<number>; } /** * (Highstock) Events for each single point. */ export interface PlotApoPointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotApoPointOptions { /** * (Highstock) Events for each single point. */ events?: PlotApoPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotApoStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotApoStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotApoStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotApoStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotApoStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotApoStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotApoStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotApoStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotApoStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotApoStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotApoStatesHoverMarkerStatesHoverOptions; inactive?: PlotApoStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotApoStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotApoStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotApoStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotApoStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotApoStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotApoStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotApoStatesHoverMarkerOptions; } export interface PlotApoStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotApoStatesInactiveOptions { animation?: PlotApoStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotApoStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotApoStatesOptions { /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotApoStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotApoStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotApoStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotApoStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotApoStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotApoStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotApoStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotApoStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotApoStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotApoStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotApoStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotApoStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotApoStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotApoStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotApoStatesSelectMarkerStatesHoverOptions; inactive?: PlotApoStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotApoStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotApoStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotApoStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotApoStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotApoStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotApoStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotApoStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotApoTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotApoTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotApoTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) Number of decimals in indicator series. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotApoZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts, Highstock) Keyboard navigation for a series */ export interface PlotAreaAccessibilityKeyboardNavigationOptions { /** * (Highcharts, Highstock) Enable/disable keyboard navigation support for a * specific series. */ enabled?: boolean; } /** * (Highcharts, Highstock) Accessibility options for a series. Requires the * accessibility module. */ export interface PlotAreaAccessibilityOptions { /** * (Highcharts, Highstock) Provide a description of the series, announced to * screen readers. */ description?: string; /** * (Highcharts, Highstock) Enable/disable accessibility functionality for a * specific series. */ enabled?: boolean; /** * (Highcharts, Highstock) Expose only the series element to screen readers, * not its points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts, Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotAreaAccessibilityKeyboardNavigationOptions); /** * (Highcharts, Highstock) Formatter function to use instead of the default * for point descriptions. Same as * `accessibility.pointDescriptionFormatter`, but for a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts, Highstock) Enable or disable the initial animation when a series * is displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotAreaAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotAreaConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotAreaConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotAreaConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotAreaConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotAreaConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotAreaConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotAreaConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotAreaDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts, Highstock) Options for the drag handles. */ export interface PlotAreaDragDropDragHandleOptions { /** * (Highcharts, Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts, Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The mouse cursor to use for the drag handles. By * default this is intelligently switching between `ew-resize` and * `ns-resize` depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts, Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts, Highstock) Function to define the SVG path to use for the * drag handles. Takes the point as argument. Should return an SVG path in * array format. The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts, Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box default state. */ export interface PlotAreaDragDropGuideBoxDefaultOptions { /** * (Highcharts, Highstock) CSS class name of the guide box in this state. * Defaults to `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts, Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Guide box cursor. */ cursor?: string; /** * (Highcharts, Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts, Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts, Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box. The guide box has * one state by default, the `default` state. */ export interface PlotAreaDragDropGuideBoxOptions { /** * (Highcharts, Highstock) Style options for the guide box default state. */ default?: PlotAreaDragDropGuideBoxDefaultOptions; } /** * (Highcharts, Highstock) The draggable-points module allows points to be moved * around or modified in the chart. In addition to the options mentioned under * the `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotAreaDragDropOptions { /** * (Highcharts, Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts, Highstock) Enable dragging in the Y dimension. Note that * this is not supported for TreeGrid axes (the default axis type in Gantt * charts). */ draggableY?: boolean; /** * (Highcharts, Highstock) Options for the drag handles. */ dragHandle?: PlotAreaDragDropDragHandleOptions; /** * (Highcharts, Highstock) Set the maximum X value the points can be moved * to. */ dragMaxX?: number; /** * (Highcharts, Highstock) Set the maximum Y value the points can be moved * to. */ dragMaxY?: number; /** * (Highcharts, Highstock) Set the minimum X value the points can be moved * to. */ dragMinX?: number; /** * (Highcharts, Highstock) Set the minimum Y value the points can be moved * to. */ dragMinY?: number; /** * (Highcharts, Highstock) The X precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionX?: number; /** * (Highcharts, Highstock) The Y precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionY?: number; /** * (Highcharts, Highstock) The amount of pixels to drag the pointer before * it counts as a drag operation. This prevents drag/drop to fire when just * clicking or selecting points. */ dragSensitivity?: number; /** * (Highcharts, Highstock) Group the points by a property. Points with the * same property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts, Highstock) Style options for the guide box. The guide box * has one state by default, the `default` state. */ guideBox?: (PlotAreaDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts, Highstock) Update points as they are dragged. If false, a * guide box is drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock) General event handlers for the series items. These * event hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotAreaEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts, Highstock) Fires when the checkbox next to the series' name * in the legend is clicked. One parameter, `event`, is passed to the * function. The state of the checkbox is found by `event.checked`. The * checked item is found by `event.item`. Return `false` to prevent the * default action which is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is clicked. One parameter, * `event`, is passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is hidden after chart * generation time, either by clicking the legend item or by calling * `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts, Highstock) Fires when the legend item belonging to the * series is clicked. One parameter, `event`, is passed to the function. The * default action is to toggle the visibility of the series. This can be * prevented by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse leaves the graph. One * parameter, `event`, is passed to the function, containing common event * information. If the stickyTracking option is true, `mouseOut` doesn't * happen before the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse enters the graph. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is shown after chart * generation time, either by clicking the legend item or by calling * `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotAreaLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotAreaLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotAreaLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotAreaLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotAreaLastVisiblePriceLabelOptions; } /** * (Highcharts, Highstock) Options for the point markers of line-like series. * Properties like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't have * markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotAreaMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotAreaMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotAreaMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotAreaMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotAreaMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotAreaMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotAreaMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotAreaMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotAreaMarkerStatesHoverOptions; inactive?: PlotAreaMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotAreaMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotAreaMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotAreaMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts, Highstock) The area series type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `area` series are defined in plotOptions.area. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotAreaOptions { /** * (Highcharts, Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotAreaAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highcharts, Highstock) Allow this series' points to be selected by * clicking on the graphic (columns, point markers, pie slices, map areas * etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts, Highstock) Enable or disable the initial animation when a * series is displayed. The animation can also be set as a configuration * object. Please note that this option only applies to the initial * animation of the series itself. For other animations, see chart.animation * and the animation parameter under the API methods. The following * properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotAreaAnimationOptions); /** * (Highcharts, Highstock) For some series, there is a limit that shuts down * initial animation by default when the total number of points in the chart * is too high. For example, for a column chart and its derivatives, * animation does not run if there is more than 250 points totally. To * disable this cap, set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highcharts, Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts, Highstock) Set the point threshold for when a series should * enter boost mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highcharts, Highstock) An additional class name to apply to the series' * graphical elements. This option does not replace default class names of * the graphical element. */ className?: string; /** * (Highcharts, Highstock) Disable this option to allow series rendering in * the whole plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts, Highstock) The main color of the series. In line type series * it applies to the line and the point markers unless otherwise specified. * In bar type series it applies to the bars unless a color is specified per * point. The default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts, Highstock) Styled mode only. A specific color index to use * for the series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotAreaConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highcharts, Highstock) You can set the cursor to "pointer" if you have * click events attached to the series, to signal to the user that the * points and lines can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highcharts, Highstock) A name for the dash style to use for the graph, * or for some series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotAreaDataGroupingOptions; /** * (Highcharts, Highstock) Options for the series data labels, appearing * next to each data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts, Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts, Highstock) The draggable-points module allows points to be * moved around or modified in the chart. In addition to the options * mentioned under the `dragDrop` API structure, the module fires three * events, point.dragStart, point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotAreaDragDropOptions; /** * (Highcharts, Highstock) Enable or disable the mouse tracking for a * specific series. This includes point tooltips and click events on graphs * and points. For large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts, Highstock) General event handlers for the series items. * These event hooks can also be attached to the series at run time using * the `Highcharts.addEvent` function. */ events?: PlotAreaEventsOptions; /** * (Highcharts, Highstock) By default, series are exposed to screen readers * as regions. By enabling this option, the series element itself will be * exposed in the same way as the data points. This is useful if the series * is not used as a grouping entity in the chart, but you still want to * attach a description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highcharts, Highstock) Fill color or gradient for the area. When `null`, * the series' `color` is used with the series' `fillOpacity`. * * In styled mode, the fill color can be set with the `.highcharts-area` * class name. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Fill opacity for the area. When you set an * explicit `fillColor`, the `fillOpacity` is not applied. Instead, you * should define the opacity in the `fillColor` with an rgba color * definition. The `fillOpacity` setting, also the default setting, * overrides the alpha component of the `color` setting. * * In styled mode, the fill opacity can be set with the `.highcharts-area` * class name. */ fillOpacity?: number; /** * (Highcharts, Highstock) Determines whether the series should look for the * nearest point in both dimensions or just the x-dimension when hovering * the series. Defaults to `'xy'` for scatter series and `'x'` for most * other series. If the data has duplicate x-values, it is recommended to * set this to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highcharts, Highstock) Export-data module required. When set to `false` * will prevent the series data from being included in any form of data * export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts, Highstock) An array specifying which option maps to which * key in the data point array. This makes it convenient to work with * unstructured data arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotAreaLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotAreaLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotAreaLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) A separate color for the graph line. By default * the line takes the `color` of the series, but the lineColor setting * allows setting a separate color for the line without altering the * `fillColor`. * * In styled mode, the line stroke can be set with the `.highcharts-graph` * class name. */ lineColor?: ColorString; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts, Highstock) Options for the point markers of line-like * series. Properties like `fillColor`, `lineColor` and `lineWidth` define * the visual appearance of the markers. Other series types, like column * series, don't have markers, but have visual options on the series level * instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotAreaMarkerOptions; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts, Highstock) The color for the parts of the graph or points * that are below the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) A separate color for the negative part of the area. * * In styled mode, a negative color is set with the `.highcharts-negative` * class name. */ negativeFillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Opacity of a series parts: line, fill (e.g. area) * and dataLabels. */ opacity?: number; /** * (Highcharts, Highstock) Properties for each single point. */ point?: PlotAreaPointOptions; /** * (Highcharts, Highstock) Same as accessibility.pointDescriptionFormatter, * but for an individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, `pointInterval` defines the interval of the x values. For * example, if a series contains one value every decade starting from year * 0, set `pointInterval` to `10`. In true `datetime` axes, the * `pointInterval` is set in milliseconds. * * It can be also be combined with `pointIntervalUnit` to draw irregular * time intervals. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointInterval?: number; /** * (Highcharts, Highstock, Gantt) On datetime series, this allows for * setting the pointInterval to irregular time units, `day`, `month` and * `year`. A day is usually the same as 24 hours, but `pointIntervalUnit` * also takes the DST crossover into consideration when dealing with local * time. Combine this option with `pointInterval` to draw weeks, quarters, 6 * months, 10 years etc. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointIntervalUnit?: OptionsPointIntervalUnitValue; /** * (Highcharts, Highstock, Gantt) Possible values: `"on"`, `"between"`, * `number`. * * In a column chart, when pointPlacement is `"on"`, the point will not * create any padding of the X axis. In a polar column chart this means that * the first column points directly north. If the pointPlacement is * `"between"`, the columns will be laid out between ticks. This is useful * for example for visualising an amount between two points in time or in a * certain sector of a polar chart. * * Since Highcharts 3.0.2, the point placement can also be numeric, where 0 * is on the axis value, -0.5 is between this value and the previous, and * 0.5 is between this value and the next. Unlike the textual options, * numeric point placement options won't affect axis padding. * * Note that pointPlacement needs a pointRange to work. For column series * this is computed, but for line-type series it needs to be set. * * For the `xrange` series type and gantt charts, if the Y axis is a * category axis, the `pointPlacement` applies to the Y axis rather than the * (typically datetime) X axis. * * Defaults to `undefined` in cartesian charts, `"between"` in polar charts. */ pointPlacement?: (number|string); /** * (Highstock) The width of each point on the x axis. For example in a * column chart with one value each day, the pointRange would be 1 day (= 24 * * 3600 * * * 1000 milliseconds). This is normally computed automatically, but this * option can be used to override the automatic value. */ pointRange?: number; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, pointStart defines on what value to start. For example, if a * series contains one yearly value starting from 1945, set pointStart to * 1945. */ pointStart?: number; /** * (Highcharts, Highstock) Whether to select the series initially. If * `showCheckbox` is true, the checkbox next to the series name in the * legend will be checked for a selected series. */ selected?: boolean; /** * (Highcharts, Highstock) Whether to apply a drop shadow to the graph line. * Since 2.3 the shadow can be an object configuration containing `color`, * `offsetX`, `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highcharts, Highstock) If true, a checkbox is displayed next to the * legend item to allow selecting the series. The state of the checkbox is * determined by the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts, Highstock) Whether to display this particular series or * series type in the legend. The default value is `true` for standalone * series, `false` for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts, Highstock) If set to `true`, the accessibility module will * skip past the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; /** * (Highcharts, Highstock) Whether to stack the values of each series on top * of each other. Possible values are `undefined` to disable, `"normal"` to * stack by value or `"percent"`. When stacking is enabled, data must be * sorted in ascending X order. A special stacking option is with the * streamgraph series type, where the stacking option is set to `"stream"`. * The second one is `"overlap"`, which only applies to waterfall series. */ stacking?: OptionsStackingValue; states?: PlotAreaStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highcharts, Highstock) Sticky tracking of mouse events. When true, the * `mouseOut` event on a series isn't triggered until the mouse moves over * another series, or out of the plot area. When false, the `mouseOut` event * on a series is triggered when the mouse leaves the area around the * series' graph or markers. This also implies the tooltip when not shared. * When `stickyTracking` is false and `tooltip.shared` is false, the tooltip * will be hidden when moving the mouse between series. Defaults to true for * line and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The Y axis value to serve as the base for the * area, for distinguishing between values above and below a threshold. The * area between the graph and the threshold is filled. * * * If a number is given, the Y axis will scale to the threshold. * * * If `null`, the scaling behaves like a line series with fill between the * graph and the Y axis minimum. * * * If `Infinity` or `-Infinity`, the area between the graph and the * corresponing Y axis extreme is filled (since v6.1.0). */ threshold?: number; /** * (Highcharts, Highstock) A configuration object for the tooltip rendering * of each single series. Properties are inherited from tooltip, but only * the following properties can be defined on a series level. */ tooltip?: PlotAreaTooltipOptions; /** * (Highcharts, Highstock) Whether the whole area or just the line should * respond to mouseover tooltips and other mouse or touch events. */ trackByArea?: boolean; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highcharts, Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotAreaZonesOptions>; } /** * (Highcharts, Highstock) Events for each single point. */ export interface PlotAreaPointEventsOptions { /** * (Highcharts, Highstock) Fires when a point is clicked. One parameter, * `event`, is passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock) Callback that fires while dragging a point. The * mouse event is passed in as parameter. The original data can be accessed * from `e.origin`, and the new point values can be accessed from * `e.newPoints`. If there is only a single point being updated, it can be * accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock) Callback that fires when starting to drag a * point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock) Callback that fires when the point is dropped. * The parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse leaves the area close to the * point. One parameter, `event`, is passed to the function, containing * common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse enters the area close to the * point. One parameter, `event`, is passed to the function, containing * common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is updated programmatically * through the `.update()` method. One parameter, `event`, is passed to the * function. The new point options can be accessed through `event.options`. * Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts, Highstock) Properties for each single point. */ export interface PlotAreaPointOptions { /** * (Highcharts, Highstock) Events for each single point. */ events?: PlotAreaPointEventsOptions; } /** * (Highcharts, Highstock) Keyboard navigation for a series */ export interface PlotArearangeAccessibilityKeyboardNavigationOptions { /** * (Highcharts, Highstock) Enable/disable keyboard navigation support for a * specific series. */ enabled?: boolean; } /** * (Highcharts, Highstock) Accessibility options for a series. Requires the * accessibility module. */ export interface PlotArearangeAccessibilityOptions { /** * (Highcharts, Highstock) Provide a description of the series, announced to * screen readers. */ description?: string; /** * (Highcharts, Highstock) Enable/disable accessibility functionality for a * specific series. */ enabled?: boolean; /** * (Highcharts, Highstock) Expose only the series element to screen readers, * not its points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts, Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotArearangeAccessibilityKeyboardNavigationOptions); /** * (Highcharts, Highstock) Formatter function to use instead of the default * for point descriptions. Same as * `accessibility.pointDescriptionFormatter`, but for a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts, Highstock) Enable or disable the initial animation when a series * is displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotArearangeAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotArearangeConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotArearangeConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotArearangeConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotArearangeConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotArearangeConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotArearangeConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotArearangeConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotArearangeDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts, Highstock) Extended data labels for range series types. Range * series data labels use no `x` and `y` options. Instead, they have `xLow`, * `xHigh`, `yLow` and `yHigh` options to allow the higher and lower data label * sets individually. */ export interface PlotAreaRangeDataLabelsOptionsObject extends DataLabelsOptionsObject { /** * (Highcharts, Highstock) X offset of the higher data labels relative to * the point value. */ xHigh?: number; /** * (Highcharts, Highstock) X offset of the lower data labels relative to the * point value. */ xLow?: number; /** * (Highcharts, Highstock) Y offset of the higher data labels relative to * the point value. */ yHigh?: number; /** * (Highcharts, Highstock) Y offset of the lower data labels relative to the * point value. */ yLow?: number; } /** * (Highcharts, Highstock) Options for the drag handles. */ export interface PlotArearangeDragDropDragHandleOptions { /** * (Highcharts, Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts, Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The mouse cursor to use for the drag handles. By * default this is intelligently switching between `ew-resize` and * `ns-resize` depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts, Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts, Highstock) Function to define the SVG path to use for the * drag handles. Takes the point as argument. Should return an SVG path in * array format. The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts, Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box default state. */ export interface PlotArearangeDragDropGuideBoxDefaultOptions { /** * (Highcharts, Highstock) CSS class name of the guide box in this state. * Defaults to `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts, Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Guide box cursor. */ cursor?: string; /** * (Highcharts, Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts, Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts, Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box. The guide box has * one state by default, the `default` state. */ export interface PlotArearangeDragDropGuideBoxOptions { /** * (Highcharts, Highstock) Style options for the guide box default state. */ default?: PlotArearangeDragDropGuideBoxDefaultOptions; } /** * (Highcharts, Highstock) The draggable-points module allows points to be moved * around or modified in the chart. In addition to the options mentioned under * the `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotArearangeDragDropOptions { /** * (Highcharts, Highstock) Allow high value to be dragged individually. * Requires `draggable-points` module. */ draggableHigh?: boolean; /** * (Highcharts, Highstock) Allow low value to be dragged individually. * Requires `draggable-points` module. */ draggableLow?: boolean; /** * (Highcharts, Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts, Highstock) Enable dragging in the Y dimension. Note that * this is not supported for TreeGrid axes (the default axis type in Gantt * charts). */ draggableY?: boolean; /** * (Highcharts, Highstock) Options for the drag handles. */ dragHandle?: PlotArearangeDragDropDragHandleOptions; /** * (Highcharts, Highstock) Set the maximum X value the points can be moved * to. */ dragMaxX?: number; /** * (Highcharts, Highstock) Set the maximum Y value the points can be moved * to. */ dragMaxY?: number; /** * (Highcharts, Highstock) Set the minimum X value the points can be moved * to. */ dragMinX?: number; /** * (Highcharts, Highstock) Set the minimum Y value the points can be moved * to. */ dragMinY?: number; /** * (Highcharts, Highstock) The X precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionX?: number; /** * (Highcharts, Highstock) The Y precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionY?: number; /** * (Highcharts, Highstock) The amount of pixels to drag the pointer before * it counts as a drag operation. This prevents drag/drop to fire when just * clicking or selecting points. */ dragSensitivity?: number; /** * (Highcharts, Highstock) Group the points by a property. Points with the * same property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts, Highstock) Style options for the guide box. The guide box * has one state by default, the `default` state. */ guideBox?: (PlotArearangeDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts, Highstock) Update points as they are dragged. If false, a * guide box is drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock) General event handlers for the series items. These * event hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotArearangeEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts, Highstock) Fires when the checkbox next to the series' name * in the legend is clicked. One parameter, `event`, is passed to the * function. The state of the checkbox is found by `event.checked`. The * checked item is found by `event.item`. Return `false` to prevent the * default action which is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is clicked. One parameter, * `event`, is passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is hidden after chart * generation time, either by clicking the legend item or by calling * `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts, Highstock) Fires when the legend item belonging to the * series is clicked. One parameter, `event`, is passed to the function. The * default action is to toggle the visibility of the series. This can be * prevented by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse leaves the graph. One * parameter, `event`, is passed to the function, containing common event * information. If the stickyTracking option is true, `mouseOut` doesn't * happen before the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse enters the graph. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is shown after chart * generation time, either by clicking the legend item or by calling * `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotArearangeLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotArearangeLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotArearangeLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotArearangeLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotArearangeLastVisiblePriceLabelOptions; } /** * (Highcharts, Highstock) Options for the point markers of line-like series. * Properties like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't have * markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotArearangeMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotArearangeMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotArearangeMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotArearangeMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotArearangeMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotArearangeMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotArearangeMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotArearangeMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotArearangeMarkerStatesHoverOptions; inactive?: PlotArearangeMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotArearangeMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotArearangeMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotArearangeMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts, Highstock) The area range series is a carteseian series with * higher and lower values for each point along an X axis, where the area * between the values is shaded. Requires `highcharts-more.js`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `arearange` series are defined in plotOptions.arearange. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotArearangeOptions { /** * (Highcharts, Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotArearangeAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highcharts, Highstock) Allow this series' points to be selected by * clicking on the graphic (columns, point markers, pie slices, map areas * etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts, Highstock) Enable or disable the initial animation when a * series is displayed. The animation can also be set as a configuration * object. Please note that this option only applies to the initial * animation of the series itself. For other animations, see chart.animation * and the animation parameter under the API methods. The following * properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotArearangeAnimationOptions); /** * (Highcharts, Highstock) For some series, there is a limit that shuts down * initial animation by default when the total number of points in the chart * is too high. For example, for a column chart and its derivatives, * animation does not run if there is more than 250 points totally. To * disable this cap, set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highcharts, Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts, Highstock) Set the point threshold for when a series should * enter boost mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highcharts, Highstock) An additional class name to apply to the series' * graphical elements. This option does not replace default class names of * the graphical element. */ className?: string; /** * (Highcharts, Highstock) Disable this option to allow series rendering in * the whole plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts, Highstock) The main color of the series. In line type series * it applies to the line and the point markers unless otherwise specified. * In bar type series it applies to the bars unless a color is specified per * point. The default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts, Highstock) Styled mode only. A specific color index to use * for the series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotArearangeConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highcharts, Highstock) You can set the cursor to "pointer" if you have * click events attached to the series, to signal to the user that the * points and lines can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highcharts, Highstock) A name for the dash style to use for the graph, * or for some series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotArearangeDataGroupingOptions; /** * (Highcharts, Highstock) Options for the series data labels, appearing * next to each data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: (DataLabelsOptionsObject|PlotAreaRangeDataLabelsOptionsObject); /** * (Highcharts, Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts, Highstock) The draggable-points module allows points to be * moved around or modified in the chart. In addition to the options * mentioned under the `dragDrop` API structure, the module fires three * events, point.dragStart, point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotArearangeDragDropOptions; /** * (Highcharts, Highstock) Enable or disable the mouse tracking for a * specific series. This includes point tooltips and click events on graphs * and points. For large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts, Highstock) General event handlers for the series items. * These event hooks can also be attached to the series at run time using * the `Highcharts.addEvent` function. */ events?: PlotArearangeEventsOptions; /** * (Highcharts, Highstock) By default, series are exposed to screen readers * as regions. By enabling this option, the series element itself will be * exposed in the same way as the data points. This is useful if the series * is not used as a grouping entity in the chart, but you still want to * attach a description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highcharts, Highstock) Fill color or gradient for the area. When `null`, * the series' `color` is used with the series' `fillOpacity`. * * In styled mode, the fill color can be set with the `.highcharts-area` * class name. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Fill opacity for the area. When you set an * explicit `fillColor`, the `fillOpacity` is not applied. Instead, you * should define the opacity in the `fillColor` with an rgba color * definition. The `fillOpacity` setting, also the default setting, * overrides the alpha component of the `color` setting. * * In styled mode, the fill opacity can be set with the `.highcharts-area` * class name. */ fillOpacity?: number; /** * (Highcharts, Highstock) Determines whether the series should look for the * nearest point in both dimensions or just the x-dimension when hovering * the series. Defaults to `'xy'` for scatter series and `'x'` for most * other series. If the data has duplicate x-values, it is recommended to * set this to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highcharts, Highstock) Export-data module required. When set to `false` * will prevent the series data from being included in any form of data * export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts, Highstock) An array specifying which option maps to which * key in the data point array. This makes it convenient to work with * unstructured data arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotArearangeLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotArearangeLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotArearangeLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) A separate color for the graph line. By default * the line takes the `color` of the series, but the lineColor setting * allows setting a separate color for the line without altering the * `fillColor`. * * In styled mode, the line stroke can be set with the `.highcharts-graph` * class name. */ lineColor?: ColorString; /** * (Highcharts, Highstock) Pixel width of the arearange graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts, Highstock) Options for the point markers of line-like * series. Properties like `fillColor`, `lineColor` and `lineWidth` define * the visual appearance of the markers. Other series types, like column * series, don't have markers, but have visual options on the series level * instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotArearangeMarkerOptions; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts, Highstock) The color for the parts of the graph or points * that are below the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) A separate color for the negative part of the area. * * In styled mode, a negative color is set with the `.highcharts-negative` * class name. */ negativeFillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Opacity of a series parts: line, fill (e.g. area) * and dataLabels. */ opacity?: number; /** * (Highcharts, Highstock) Properties for each single point. */ point?: PlotArearangePointOptions; /** * (Highcharts, Highstock) Same as accessibility.pointDescriptionFormatter, * but for an individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, `pointInterval` defines the interval of the x values. For * example, if a series contains one value every decade starting from year * 0, set `pointInterval` to `10`. In true `datetime` axes, the * `pointInterval` is set in milliseconds. * * It can be also be combined with `pointIntervalUnit` to draw irregular * time intervals. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointInterval?: number; /** * (Highcharts, Highstock, Gantt) On datetime series, this allows for * setting the pointInterval to irregular time units, `day`, `month` and * `year`. A day is usually the same as 24 hours, but `pointIntervalUnit` * also takes the DST crossover into consideration when dealing with local * time. Combine this option with `pointInterval` to draw weeks, quarters, 6 * months, 10 years etc. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointIntervalUnit?: OptionsPointIntervalUnitValue; /** * (Highcharts, Highstock, Gantt) Possible values: `"on"`, `"between"`, * `number`. * * In a column chart, when pointPlacement is `"on"`, the point will not * create any padding of the X axis. In a polar column chart this means that * the first column points directly north. If the pointPlacement is * `"between"`, the columns will be laid out between ticks. This is useful * for example for visualising an amount between two points in time or in a * certain sector of a polar chart. * * Since Highcharts 3.0.2, the point placement can also be numeric, where 0 * is on the axis value, -0.5 is between this value and the previous, and * 0.5 is between this value and the next. Unlike the textual options, * numeric point placement options won't affect axis padding. * * Note that pointPlacement needs a pointRange to work. For column series * this is computed, but for line-type series it needs to be set. * * For the `xrange` series type and gantt charts, if the Y axis is a * category axis, the `pointPlacement` applies to the Y axis rather than the * (typically datetime) X axis. * * Defaults to `undefined` in cartesian charts, `"between"` in polar charts. */ pointPlacement?: (number|string); /** * (Highstock) The width of each point on the x axis. For example in a * column chart with one value each day, the pointRange would be 1 day (= 24 * * 3600 * * * 1000 milliseconds). This is normally computed automatically, but this * option can be used to override the automatic value. */ pointRange?: number; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, pointStart defines on what value to start. For example, if a * series contains one yearly value starting from 1945, set pointStart to * 1945. */ pointStart?: number; /** * (Highcharts, Highstock) Whether to select the series initially. If * `showCheckbox` is true, the checkbox next to the series name in the * legend will be checked for a selected series. */ selected?: boolean; /** * (Highcharts) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highcharts, Highstock) If true, a checkbox is displayed next to the * legend item to allow selecting the series. The state of the checkbox is * determined by the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts, Highstock) Whether to display this particular series or * series type in the legend. The default value is `true` for standalone * series, `false` for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts, Highstock) If set to `true`, the accessibility module will * skip past the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotArearangeStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highcharts, Highstock) Sticky tracking of mouse events. When true, the * `mouseOut` event on a series isn't triggered until the mouse moves over * another series, or out of the plot area. When false, the `mouseOut` event * on a series is triggered when the mouse leaves the area around the * series' graph or markers. This also implies the tooltip when not shared. * When `stickyTracking` is false and `tooltip.shared` is false, the tooltip * will be hidden when moving the mouse between series. Defaults to true for * line and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The Y axis value to serve as the base for the * area, for distinguishing between values above and below a threshold. The * area between the graph and the threshold is filled. * * * If a number is given, the Y axis will scale to the threshold. * * * If `null`, the scaling behaves like a line series with fill between the * graph and the Y axis minimum. * * * If `Infinity` or `-Infinity`, the area between the graph and the * corresponing Y axis extreme is filled (since v6.1.0). */ threshold?: any; /** * (Highcharts, Highstock) A configuration object for the tooltip rendering * of each single series. Properties are inherited from tooltip, but only * the following properties can be defined on a series level. */ tooltip?: PlotArearangeTooltipOptions; /** * (Highcharts, Highstock) Whether the whole area or just the line should * respond to mouseover tooltips and other mouse or touch events. */ trackByArea?: boolean; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highcharts, Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotArearangeZonesOptions>; } /** * (Highcharts, Highstock) Events for each single point. */ export interface PlotArearangePointEventsOptions { /** * (Highcharts, Highstock) Fires when a point is clicked. One parameter, * `event`, is passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock) Callback that fires while dragging a point. The * mouse event is passed in as parameter. The original data can be accessed * from `e.origin`, and the new point values can be accessed from * `e.newPoints`. If there is only a single point being updated, it can be * accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock) Callback that fires when starting to drag a * point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock) Callback that fires when the point is dropped. * The parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse leaves the area close to the * point. One parameter, `event`, is passed to the function, containing * common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse enters the area close to the * point. One parameter, `event`, is passed to the function, containing * common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is updated programmatically * through the `.update()` method. One parameter, `event`, is passed to the * function. The new point options can be accessed through `event.options`. * Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts, Highstock) Properties for each single point. */ export interface PlotArearangePointOptions { /** * (Highcharts, Highstock) Events for each single point. */ events?: PlotArearangePointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotArearangeStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotArearangeStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotArearangeStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotArearangeStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotArearangeStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotArearangeStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotArearangeStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotArearangeStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotArearangeStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotArearangeStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotArearangeStatesHoverMarkerStatesHoverOptions; inactive?: PlotArearangeStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotArearangeStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotArearangeStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotArearangeStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts, Highstock) Options for the hovered series. These settings * override the normal state options when a series is moused over or touched. */ export interface PlotArearangeStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotArearangeStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Enable separate styles for the hovered series to * visualize that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotArearangeStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotArearangeStatesHoverMarkerOptions; } export interface PlotArearangeStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The opposite state of a hover for series. */ export interface PlotArearangeStatesInactiveOptions { animation?: PlotArearangeStatesInactiveAnimationOptions; /** * (Highcharts, Highstock) Opacity of series elements (dataLabels, line, * area). */ opacity?: number; } /** * (Highcharts, Highstock) The normal state of a series, or for point items in * column, pie and similar series. Currently only used for setting animation * when returning to normal state from hover. */ export interface PlotArearangeStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotArearangeStatesOptions { /** * (Highcharts, Highstock) Options for the hovered series. These settings * override the normal state options when a series is moused over or * touched. */ hover?: PlotArearangeStatesHoverOptions; /** * (Highcharts, Highstock) The opposite state of a hover for series. */ inactive?: PlotArearangeStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a series, or for point items * in column, pie and similar series. Currently only used for setting * animation when returning to normal state from hover. */ normal?: PlotArearangeStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotArearangeStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotArearangeStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotArearangeStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotArearangeStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotArearangeStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotArearangeStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotArearangeStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotArearangeStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotArearangeStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotArearangeStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotArearangeStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotArearangeStatesSelectMarkerStatesHoverOptions; inactive?: PlotArearangeStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotArearangeStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotArearangeStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotArearangeStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotArearangeStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotArearangeStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotArearangeStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotArearangeStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotArearangeTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts, Highstock) A configuration object for the tooltip rendering of * each single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ export interface PlotArearangeTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotArearangeTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highcharts, Highstock) Whether the tooltip should follow the mouse as it * moves across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts, Highstock) Whether the tooltip should update as the finger * moves on a touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts, Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts, Highstock) The HTML of the tooltip header line. Variables * are enclosed by curly brackets. Available variables are `point.key`, * `series.name`, `series.color` and other members from the `point` and * `series` objects. The `point.key` variable contains the category name, x * value or datetime string depending on the type of axis. For datetime * axes, the `point.key` date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts, Highstock) The name of a symbol to use for the border around * the tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts, Highstock) The number of milliseconds to wait until the * tooltip is hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts, Highstock) The HTML of the null point's line in the tooltip. * Works analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts, Highstock) Callback function to format the text of the * tooltip for visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts, Highstock) Whether to allow the tooltip to render outside * the chart's SVG element box. By default (`false`), the tooltip is * rendered within the chart's SVG element, which results in the tooltip * being aligned inside the chart area. For small charts, this may result in * clipping or overlapping. When `true`, a separate SVG element is created * and overlaid on the page, allowing the tooltip to be aligned inside the * page itself. */ outside?: boolean; /** * (Highcharts, Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts, Highstock) The HTML of the point's line in the tooltip. * Variables are enclosed by curly brackets. Available variables are * point.x, point.y, series. name and series.color and other properties on * the same form. Furthermore, `point.y` can be extended by the * `tooltip.valuePrefix` and `tooltip.valueSuffix` variables. This can also * be overridden for each series, which makes it a good hook for displaying * units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts, Highstock) A callback function for formatting the HTML * output for a single point in the tooltip. Like the `pointFormat` string, * but with more flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts, Highstock) How many decimals to show in each series' y * value. This is overridable in each series' tooltip options object. The * default is to preserve all decimals. */ valueDecimals?: number; /** * (Highcharts, Highstock) A string to prepend to each series' y value. * Overridable in each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts, Highstock) A string to append to each series' y value. * Overridable in each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotArearangeZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts, Highstock) Keyboard navigation for a series */ export interface PlotAreasplineAccessibilityKeyboardNavigationOptions { /** * (Highcharts, Highstock) Enable/disable keyboard navigation support for a * specific series. */ enabled?: boolean; } /** * (Highcharts, Highstock) Accessibility options for a series. Requires the * accessibility module. */ export interface PlotAreasplineAccessibilityOptions { /** * (Highcharts, Highstock) Provide a description of the series, announced to * screen readers. */ description?: string; /** * (Highcharts, Highstock) Enable/disable accessibility functionality for a * specific series. */ enabled?: boolean; /** * (Highcharts, Highstock) Expose only the series element to screen readers, * not its points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts, Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotAreasplineAccessibilityKeyboardNavigationOptions); /** * (Highcharts, Highstock) Formatter function to use instead of the default * for point descriptions. Same as * `accessibility.pointDescriptionFormatter`, but for a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts, Highstock) Enable or disable the initial animation when a series * is displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotAreasplineAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotAreasplineConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotAreasplineConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotAreasplineConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotAreasplineConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotAreasplineConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotAreasplineConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotAreasplineConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotAreasplineDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts, Highstock) Options for the drag handles. */ export interface PlotAreasplineDragDropDragHandleOptions { /** * (Highcharts, Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts, Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The mouse cursor to use for the drag handles. By * default this is intelligently switching between `ew-resize` and * `ns-resize` depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts, Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts, Highstock) Function to define the SVG path to use for the * drag handles. Takes the point as argument. Should return an SVG path in * array format. The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts, Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box default state. */ export interface PlotAreasplineDragDropGuideBoxDefaultOptions { /** * (Highcharts, Highstock) CSS class name of the guide box in this state. * Defaults to `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts, Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Guide box cursor. */ cursor?: string; /** * (Highcharts, Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts, Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts, Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box. The guide box has * one state by default, the `default` state. */ export interface PlotAreasplineDragDropGuideBoxOptions { /** * (Highcharts, Highstock) Style options for the guide box default state. */ default?: PlotAreasplineDragDropGuideBoxDefaultOptions; } /** * (Highcharts, Highstock) The draggable-points module allows points to be moved * around or modified in the chart. In addition to the options mentioned under * the `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotAreasplineDragDropOptions { /** * (Highcharts, Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts, Highstock) Enable dragging in the Y dimension. Note that * this is not supported for TreeGrid axes (the default axis type in Gantt * charts). */ draggableY?: boolean; /** * (Highcharts, Highstock) Options for the drag handles. */ dragHandle?: PlotAreasplineDragDropDragHandleOptions; /** * (Highcharts, Highstock) Set the maximum X value the points can be moved * to. */ dragMaxX?: number; /** * (Highcharts, Highstock) Set the maximum Y value the points can be moved * to. */ dragMaxY?: number; /** * (Highcharts, Highstock) Set the minimum X value the points can be moved * to. */ dragMinX?: number; /** * (Highcharts, Highstock) Set the minimum Y value the points can be moved * to. */ dragMinY?: number; /** * (Highcharts, Highstock) The X precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionX?: number; /** * (Highcharts, Highstock) The Y precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionY?: number; /** * (Highcharts, Highstock) The amount of pixels to drag the pointer before * it counts as a drag operation. This prevents drag/drop to fire when just * clicking or selecting points. */ dragSensitivity?: number; /** * (Highcharts, Highstock) Group the points by a property. Points with the * same property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts, Highstock) Style options for the guide box. The guide box * has one state by default, the `default` state. */ guideBox?: (PlotAreasplineDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts, Highstock) Update points as they are dragged. If false, a * guide box is drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock) General event handlers for the series items. These * event hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotAreasplineEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts, Highstock) Fires when the checkbox next to the series' name * in the legend is clicked. One parameter, `event`, is passed to the * function. The state of the checkbox is found by `event.checked`. The * checked item is found by `event.item`. Return `false` to prevent the * default action which is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is clicked. One parameter, * `event`, is passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is hidden after chart * generation time, either by clicking the legend item or by calling * `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts, Highstock) Fires when the legend item belonging to the * series is clicked. One parameter, `event`, is passed to the function. The * default action is to toggle the visibility of the series. This can be * prevented by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse leaves the graph. One * parameter, `event`, is passed to the function, containing common event * information. If the stickyTracking option is true, `mouseOut` doesn't * happen before the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse enters the graph. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is shown after chart * generation time, either by clicking the legend item or by calling * `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotAreasplineLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotAreasplineLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotAreasplineLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotAreasplineLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotAreasplineLastVisiblePriceLabelOptions; } /** * (Highcharts, Highstock) Options for the point markers of line-like series. * Properties like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't have * markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotAreasplineMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotAreasplineMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotAreasplineMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotAreasplineMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotAreasplineMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotAreasplineMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotAreasplineMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotAreasplineMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotAreasplineMarkerStatesHoverOptions; inactive?: PlotAreasplineMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotAreasplineMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotAreasplineMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotAreasplineMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts, Highstock) The area spline series is an area series where the * graph between the points is smoothed into a spline. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `areaspline` series are defined in plotOptions.areaspline. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotAreasplineOptions { /** * (Highcharts, Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotAreasplineAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highcharts, Highstock) Allow this series' points to be selected by * clicking on the graphic (columns, point markers, pie slices, map areas * etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts, Highstock) Enable or disable the initial animation when a * series is displayed. The animation can also be set as a configuration * object. Please note that this option only applies to the initial * animation of the series itself. For other animations, see chart.animation * and the animation parameter under the API methods. The following * properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotAreasplineAnimationOptions); /** * (Highcharts, Highstock) For some series, there is a limit that shuts down * initial animation by default when the total number of points in the chart * is too high. For example, for a column chart and its derivatives, * animation does not run if there is more than 250 points totally. To * disable this cap, set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highcharts, Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts, Highstock) Set the point threshold for when a series should * enter boost mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highcharts, Highstock) An additional class name to apply to the series' * graphical elements. This option does not replace default class names of * the graphical element. */ className?: string; /** * (Highcharts, Highstock) Disable this option to allow series rendering in * the whole plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts, Highstock) The main color of the series. In line type series * it applies to the line and the point markers unless otherwise specified. * In bar type series it applies to the bars unless a color is specified per * point. The default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts, Highstock) Styled mode only. A specific color index to use * for the series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotAreasplineConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highcharts, Highstock) You can set the cursor to "pointer" if you have * click events attached to the series, to signal to the user that the * points and lines can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highcharts, Highstock) A name for the dash style to use for the graph, * or for some series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotAreasplineDataGroupingOptions; /** * (Highcharts, Highstock) Options for the series data labels, appearing * next to each data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts, Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts, Highstock) The draggable-points module allows points to be * moved around or modified in the chart. In addition to the options * mentioned under the `dragDrop` API structure, the module fires three * events, point.dragStart, point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotAreasplineDragDropOptions; /** * (Highcharts, Highstock) Enable or disable the mouse tracking for a * specific series. This includes point tooltips and click events on graphs * and points. For large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts, Highstock) General event handlers for the series items. * These event hooks can also be attached to the series at run time using * the `Highcharts.addEvent` function. */ events?: PlotAreasplineEventsOptions; /** * (Highcharts, Highstock) By default, series are exposed to screen readers * as regions. By enabling this option, the series element itself will be * exposed in the same way as the data points. This is useful if the series * is not used as a grouping entity in the chart, but you still want to * attach a description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highcharts, Highstock) Fill color or gradient for the area. When `null`, * the series' `color` is used with the series' `fillOpacity`. * * In styled mode, the fill color can be set with the `.highcharts-area` * class name. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Fill opacity for the area. When you set an * explicit `fillColor`, the `fillOpacity` is not applied. Instead, you * should define the opacity in the `fillColor` with an rgba color * definition. The `fillOpacity` setting, also the default setting, * overrides the alpha component of the `color` setting. * * In styled mode, the fill opacity can be set with the `.highcharts-area` * class name. */ fillOpacity?: number; /** * (Highcharts, Highstock) Determines whether the series should look for the * nearest point in both dimensions or just the x-dimension when hovering * the series. Defaults to `'xy'` for scatter series and `'x'` for most * other series. If the data has duplicate x-values, it is recommended to * set this to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highcharts, Highstock) Export-data module required. When set to `false` * will prevent the series data from being included in any form of data * export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts, Highstock) An array specifying which option maps to which * key in the data point array. This makes it convenient to work with * unstructured data arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotAreasplineLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotAreasplineLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotAreasplineLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) A separate color for the graph line. By default * the line takes the `color` of the series, but the lineColor setting * allows setting a separate color for the line without altering the * `fillColor`. * * In styled mode, the line stroke can be set with the `.highcharts-graph` * class name. */ lineColor?: ColorString; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts, Highstock) Options for the point markers of line-like * series. Properties like `fillColor`, `lineColor` and `lineWidth` define * the visual appearance of the markers. Other series types, like column * series, don't have markers, but have visual options on the series level * instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotAreasplineMarkerOptions; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts, Highstock) The color for the parts of the graph or points * that are below the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) A separate color for the negative part of the area. * * In styled mode, a negative color is set with the `.highcharts-negative` * class name. */ negativeFillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Opacity of a series parts: line, fill (e.g. area) * and dataLabels. */ opacity?: number; /** * (Highcharts, Highstock) Properties for each single point. */ point?: PlotAreasplinePointOptions; /** * (Highcharts, Highstock) Same as accessibility.pointDescriptionFormatter, * but for an individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, `pointInterval` defines the interval of the x values. For * example, if a series contains one value every decade starting from year * 0, set `pointInterval` to `10`. In true `datetime` axes, the * `pointInterval` is set in milliseconds. * * It can be also be combined with `pointIntervalUnit` to draw irregular * time intervals. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointInterval?: number; /** * (Highcharts, Highstock, Gantt) On datetime series, this allows for * setting the pointInterval to irregular time units, `day`, `month` and * `year`. A day is usually the same as 24 hours, but `pointIntervalUnit` * also takes the DST crossover into consideration when dealing with local * time. Combine this option with `pointInterval` to draw weeks, quarters, 6 * months, 10 years etc. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointIntervalUnit?: OptionsPointIntervalUnitValue; /** * (Highcharts, Highstock, Gantt) Possible values: `"on"`, `"between"`, * `number`. * * In a column chart, when pointPlacement is `"on"`, the point will not * create any padding of the X axis. In a polar column chart this means that * the first column points directly north. If the pointPlacement is * `"between"`, the columns will be laid out between ticks. This is useful * for example for visualising an amount between two points in time or in a * certain sector of a polar chart. * * Since Highcharts 3.0.2, the point placement can also be numeric, where 0 * is on the axis value, -0.5 is between this value and the previous, and * 0.5 is between this value and the next. Unlike the textual options, * numeric point placement options won't affect axis padding. * * Note that pointPlacement needs a pointRange to work. For column series * this is computed, but for line-type series it needs to be set. * * For the `xrange` series type and gantt charts, if the Y axis is a * category axis, the `pointPlacement` applies to the Y axis rather than the * (typically datetime) X axis. * * Defaults to `undefined` in cartesian charts, `"between"` in polar charts. */ pointPlacement?: (number|string); /** * (Highstock) The width of each point on the x axis. For example in a * column chart with one value each day, the pointRange would be 1 day (= 24 * * 3600 * * * 1000 milliseconds). This is normally computed automatically, but this * option can be used to override the automatic value. */ pointRange?: number; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, pointStart defines on what value to start. For example, if a * series contains one yearly value starting from 1945, set pointStart to * 1945. */ pointStart?: number; /** * (Highcharts, Highstock) Whether to select the series initially. If * `showCheckbox` is true, the checkbox next to the series name in the * legend will be checked for a selected series. */ selected?: boolean; /** * (Highcharts, Highstock) Whether to apply a drop shadow to the graph line. * Since 2.3 the shadow can be an object configuration containing `color`, * `offsetX`, `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highcharts, Highstock) If true, a checkbox is displayed next to the * legend item to allow selecting the series. The state of the checkbox is * determined by the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts, Highstock) Whether to display this particular series or * series type in the legend. The default value is `true` for standalone * series, `false` for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts, Highstock) If set to `true`, the accessibility module will * skip past the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; /** * (Highcharts, Highstock) Whether to stack the values of each series on top * of each other. Possible values are `undefined` to disable, `"normal"` to * stack by value or `"percent"`. When stacking is enabled, data must be * sorted in ascending X order. A special stacking option is with the * streamgraph series type, where the stacking option is set to `"stream"`. * The second one is `"overlap"`, which only applies to waterfall series. */ stacking?: OptionsStackingValue; states?: PlotAreasplineStatesOptions; /** * (Highcharts, Highstock) Sticky tracking of mouse events. When true, the * `mouseOut` event on a series isn't triggered until the mouse moves over * another series, or out of the plot area. When false, the `mouseOut` event * on a series is triggered when the mouse leaves the area around the * series' graph or markers. This also implies the tooltip when not shared. * When `stickyTracking` is false and `tooltip.shared` is false, the tooltip * will be hidden when moving the mouse between series. Defaults to true for * line and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The Y axis value to serve as the base for the * area, for distinguishing between values above and below a threshold. The * area between the graph and the threshold is filled. * * * If a number is given, the Y axis will scale to the threshold. * * * If `null`, the scaling behaves like a line series with fill between the * graph and the Y axis minimum. * * * If `Infinity` or `-Infinity`, the area between the graph and the * corresponing Y axis extreme is filled (since v6.1.0). */ threshold?: number; /** * (Highcharts, Highstock) A configuration object for the tooltip rendering * of each single series. Properties are inherited from tooltip, but only * the following properties can be defined on a series level. */ tooltip?: PlotAreasplineTooltipOptions; /** * (Highcharts, Highstock) Whether the whole area or just the line should * respond to mouseover tooltips and other mouse or touch events. */ trackByArea?: boolean; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highcharts, Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotAreasplineZonesOptions>; } /** * (Highcharts, Highstock) Events for each single point. */ export interface PlotAreasplinePointEventsOptions { /** * (Highcharts, Highstock) Fires when a point is clicked. One parameter, * `event`, is passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock) Callback that fires while dragging a point. The * mouse event is passed in as parameter. The original data can be accessed * from `e.origin`, and the new point values can be accessed from * `e.newPoints`. If there is only a single point being updated, it can be * accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock) Callback that fires when starting to drag a * point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock) Callback that fires when the point is dropped. * The parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse leaves the area close to the * point. One parameter, `event`, is passed to the function, containing * common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse enters the area close to the * point. One parameter, `event`, is passed to the function, containing * common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is updated programmatically * through the `.update()` method. One parameter, `event`, is passed to the * function. The new point options can be accessed through `event.options`. * Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts, Highstock) Properties for each single point. */ export interface PlotAreasplinePointOptions { /** * (Highcharts, Highstock) Events for each single point. */ events?: PlotAreasplinePointEventsOptions; } /** * (Highcharts, Highstock) Keyboard navigation for a series */ export interface PlotAreasplinerangeAccessibilityKeyboardNavigationOptions { /** * (Highcharts, Highstock) Enable/disable keyboard navigation support for a * specific series. */ enabled?: boolean; } /** * (Highcharts, Highstock) Accessibility options for a series. Requires the * accessibility module. */ export interface PlotAreasplinerangeAccessibilityOptions { /** * (Highcharts, Highstock) Provide a description of the series, announced to * screen readers. */ description?: string; /** * (Highcharts, Highstock) Enable/disable accessibility functionality for a * specific series. */ enabled?: boolean; /** * (Highcharts, Highstock) Expose only the series element to screen readers, * not its points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts, Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotAreasplinerangeAccessibilityKeyboardNavigationOptions); /** * (Highcharts, Highstock) Formatter function to use instead of the default * for point descriptions. Same as * `accessibility.pointDescriptionFormatter`, but for a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts, Highstock) Enable or disable the initial animation when a series * is displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotAreasplinerangeAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotAreasplinerangeConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotAreasplinerangeConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotAreasplinerangeConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotAreasplinerangeConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotAreasplinerangeConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotAreasplinerangeConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotAreasplinerangeConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotAreasplinerangeDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts, Highstock) Options for the drag handles. */ export interface PlotAreasplinerangeDragDropDragHandleOptions { /** * (Highcharts, Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts, Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The mouse cursor to use for the drag handles. By * default this is intelligently switching between `ew-resize` and * `ns-resize` depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts, Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts, Highstock) Function to define the SVG path to use for the * drag handles. Takes the point as argument. Should return an SVG path in * array format. The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts, Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box default state. */ export interface PlotAreasplinerangeDragDropGuideBoxDefaultOptions { /** * (Highcharts, Highstock) CSS class name of the guide box in this state. * Defaults to `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts, Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Guide box cursor. */ cursor?: string; /** * (Highcharts, Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts, Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts, Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box. The guide box has * one state by default, the `default` state. */ export interface PlotAreasplinerangeDragDropGuideBoxOptions { /** * (Highcharts, Highstock) Style options for the guide box default state. */ default?: PlotAreasplinerangeDragDropGuideBoxDefaultOptions; } /** * (Highcharts, Highstock) The draggable-points module allows points to be moved * around or modified in the chart. In addition to the options mentioned under * the `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotAreasplinerangeDragDropOptions { /** * (Highcharts, Highstock) Allow high value to be dragged individually. * Requires `draggable-points` module. */ draggableHigh?: boolean; /** * (Highcharts, Highstock) Allow low value to be dragged individually. * Requires `draggable-points` module. */ draggableLow?: boolean; /** * (Highcharts, Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts, Highstock) Enable dragging in the Y dimension. Note that * this is not supported for TreeGrid axes (the default axis type in Gantt * charts). */ draggableY?: boolean; /** * (Highcharts, Highstock) Options for the drag handles. */ dragHandle?: PlotAreasplinerangeDragDropDragHandleOptions; /** * (Highcharts, Highstock) Set the maximum X value the points can be moved * to. */ dragMaxX?: number; /** * (Highcharts, Highstock) Set the maximum Y value the points can be moved * to. */ dragMaxY?: number; /** * (Highcharts, Highstock) Set the minimum X value the points can be moved * to. */ dragMinX?: number; /** * (Highcharts, Highstock) Set the minimum Y value the points can be moved * to. */ dragMinY?: number; /** * (Highcharts, Highstock) The X precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionX?: number; /** * (Highcharts, Highstock) The Y precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionY?: number; /** * (Highcharts, Highstock) The amount of pixels to drag the pointer before * it counts as a drag operation. This prevents drag/drop to fire when just * clicking or selecting points. */ dragSensitivity?: number; /** * (Highcharts, Highstock) Group the points by a property. Points with the * same property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts, Highstock) Style options for the guide box. The guide box * has one state by default, the `default` state. */ guideBox?: (PlotAreasplinerangeDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts, Highstock) Update points as they are dragged. If false, a * guide box is drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock) General event handlers for the series items. These * event hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotAreasplinerangeEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts, Highstock) Fires when the checkbox next to the series' name * in the legend is clicked. One parameter, `event`, is passed to the * function. The state of the checkbox is found by `event.checked`. The * checked item is found by `event.item`. Return `false` to prevent the * default action which is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is clicked. One parameter, * `event`, is passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is hidden after chart * generation time, either by clicking the legend item or by calling * `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts, Highstock) Fires when the legend item belonging to the * series is clicked. One parameter, `event`, is passed to the function. The * default action is to toggle the visibility of the series. This can be * prevented by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse leaves the graph. One * parameter, `event`, is passed to the function, containing common event * information. If the stickyTracking option is true, `mouseOut` doesn't * happen before the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse enters the graph. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is shown after chart * generation time, either by clicking the legend item or by calling * `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotAreasplinerangeLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotAreasplinerangeLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotAreasplinerangeLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotAreasplinerangeLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotAreasplinerangeLastVisiblePriceLabelOptions; } /** * (Highcharts, Highstock) Options for the point markers of line-like series. * Properties like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't have * markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotAreasplinerangeMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotAreasplinerangeMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotAreasplinerangeMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotAreasplinerangeMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotAreasplinerangeMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotAreasplinerangeMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotAreasplinerangeMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotAreasplinerangeMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotAreasplinerangeMarkerStatesHoverOptions; inactive?: PlotAreasplinerangeMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotAreasplinerangeMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotAreasplinerangeMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotAreasplinerangeMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts, Highstock) The area spline range is a cartesian series type with * higher and lower Y values along an X axis. The area inside the range is * colored, and the graph outlining the area is a smoothed spline. Requires * `highcharts-more.js`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `areasplinerange` series are defined in * plotOptions.areasplinerange. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotAreasplinerangeOptions { /** * (Highcharts, Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotAreasplinerangeAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highcharts, Highstock) Allow this series' points to be selected by * clicking on the graphic (columns, point markers, pie slices, map areas * etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts, Highstock) Enable or disable the initial animation when a * series is displayed. The animation can also be set as a configuration * object. Please note that this option only applies to the initial * animation of the series itself. For other animations, see chart.animation * and the animation parameter under the API methods. The following * properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotAreasplinerangeAnimationOptions); /** * (Highcharts, Highstock) For some series, there is a limit that shuts down * initial animation by default when the total number of points in the chart * is too high. For example, for a column chart and its derivatives, * animation does not run if there is more than 250 points totally. To * disable this cap, set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highcharts, Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts, Highstock) Set the point threshold for when a series should * enter boost mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highcharts, Highstock) An additional class name to apply to the series' * graphical elements. This option does not replace default class names of * the graphical element. */ className?: string; /** * (Highcharts, Highstock) Disable this option to allow series rendering in * the whole plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts, Highstock) The main color of the series. In line type series * it applies to the line and the point markers unless otherwise specified. * In bar type series it applies to the bars unless a color is specified per * point. The default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts, Highstock) Styled mode only. A specific color index to use * for the series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotAreasplinerangeConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highcharts, Highstock) You can set the cursor to "pointer" if you have * click events attached to the series, to signal to the user that the * points and lines can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highcharts, Highstock) A name for the dash style to use for the graph, * or for some series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotAreasplinerangeDataGroupingOptions; /** * (Highcharts, Highstock) Options for the series data labels, appearing * next to each data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: (DataLabelsOptionsObject|PlotAreaRangeDataLabelsOptionsObject); /** * (Highcharts, Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts, Highstock) The draggable-points module allows points to be * moved around or modified in the chart. In addition to the options * mentioned under the `dragDrop` API structure, the module fires three * events, point.dragStart, point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotAreasplinerangeDragDropOptions; /** * (Highcharts, Highstock) Enable or disable the mouse tracking for a * specific series. This includes point tooltips and click events on graphs * and points. For large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts, Highstock) General event handlers for the series items. * These event hooks can also be attached to the series at run time using * the `Highcharts.addEvent` function. */ events?: PlotAreasplinerangeEventsOptions; /** * (Highcharts, Highstock) By default, series are exposed to screen readers * as regions. By enabling this option, the series element itself will be * exposed in the same way as the data points. This is useful if the series * is not used as a grouping entity in the chart, but you still want to * attach a description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highcharts, Highstock) Fill color or gradient for the area. When `null`, * the series' `color` is used with the series' `fillOpacity`. * * In styled mode, the fill color can be set with the `.highcharts-area` * class name. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Fill opacity for the area. When you set an * explicit `fillColor`, the `fillOpacity` is not applied. Instead, you * should define the opacity in the `fillColor` with an rgba color * definition. The `fillOpacity` setting, also the default setting, * overrides the alpha component of the `color` setting. * * In styled mode, the fill opacity can be set with the `.highcharts-area` * class name. */ fillOpacity?: number; /** * (Highcharts, Highstock) Determines whether the series should look for the * nearest point in both dimensions or just the x-dimension when hovering * the series. Defaults to `'xy'` for scatter series and `'x'` for most * other series. If the data has duplicate x-values, it is recommended to * set this to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highcharts, Highstock) Export-data module required. When set to `false` * will prevent the series data from being included in any form of data * export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts, Highstock) An array specifying which option maps to which * key in the data point array. This makes it convenient to work with * unstructured data arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotAreasplinerangeLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotAreasplinerangeLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotAreasplinerangeLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) A separate color for the graph line. By default * the line takes the `color` of the series, but the lineColor setting * allows setting a separate color for the line without altering the * `fillColor`. * * In styled mode, the line stroke can be set with the `.highcharts-graph` * class name. */ lineColor?: ColorString; /** * (Highcharts, Highstock) Pixel width of the arearange graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts, Highstock) Options for the point markers of line-like * series. Properties like `fillColor`, `lineColor` and `lineWidth` define * the visual appearance of the markers. Other series types, like column * series, don't have markers, but have visual options on the series level * instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotAreasplinerangeMarkerOptions; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts, Highstock) The color for the parts of the graph or points * that are below the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) A separate color for the negative part of the area. * * In styled mode, a negative color is set with the `.highcharts-negative` * class name. */ negativeFillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Opacity of a series parts: line, fill (e.g. area) * and dataLabels. */ opacity?: number; /** * (Highcharts, Highstock) Properties for each single point. */ point?: PlotAreasplinerangePointOptions; /** * (Highcharts, Highstock) Same as accessibility.pointDescriptionFormatter, * but for an individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, `pointInterval` defines the interval of the x values. For * example, if a series contains one value every decade starting from year * 0, set `pointInterval` to `10`. In true `datetime` axes, the * `pointInterval` is set in milliseconds. * * It can be also be combined with `pointIntervalUnit` to draw irregular * time intervals. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointInterval?: number; /** * (Highcharts, Highstock, Gantt) On datetime series, this allows for * setting the pointInterval to irregular time units, `day`, `month` and * `year`. A day is usually the same as 24 hours, but `pointIntervalUnit` * also takes the DST crossover into consideration when dealing with local * time. Combine this option with `pointInterval` to draw weeks, quarters, 6 * months, 10 years etc. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointIntervalUnit?: OptionsPointIntervalUnitValue; /** * (Highcharts, Highstock, Gantt) Possible values: `"on"`, `"between"`, * `number`. * * In a column chart, when pointPlacement is `"on"`, the point will not * create any padding of the X axis. In a polar column chart this means that * the first column points directly north. If the pointPlacement is * `"between"`, the columns will be laid out between ticks. This is useful * for example for visualising an amount between two points in time or in a * certain sector of a polar chart. * * Since Highcharts 3.0.2, the point placement can also be numeric, where 0 * is on the axis value, -0.5 is between this value and the previous, and * 0.5 is between this value and the next. Unlike the textual options, * numeric point placement options won't affect axis padding. * * Note that pointPlacement needs a pointRange to work. For column series * this is computed, but for line-type series it needs to be set. * * For the `xrange` series type and gantt charts, if the Y axis is a * category axis, the `pointPlacement` applies to the Y axis rather than the * (typically datetime) X axis. * * Defaults to `undefined` in cartesian charts, `"between"` in polar charts. */ pointPlacement?: (number|string); /** * (Highstock) The width of each point on the x axis. For example in a * column chart with one value each day, the pointRange would be 1 day (= 24 * * 3600 * * * 1000 milliseconds). This is normally computed automatically, but this * option can be used to override the automatic value. */ pointRange?: number; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, pointStart defines on what value to start. For example, if a * series contains one yearly value starting from 1945, set pointStart to * 1945. */ pointStart?: number; /** * (Highcharts, Highstock) Whether to select the series initially. If * `showCheckbox` is true, the checkbox next to the series name in the * legend will be checked for a selected series. */ selected?: boolean; /** * (Highcharts) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highcharts, Highstock) If true, a checkbox is displayed next to the * legend item to allow selecting the series. The state of the checkbox is * determined by the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts, Highstock) Whether to display this particular series or * series type in the legend. The default value is `true` for standalone * series, `false` for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts, Highstock) If set to `true`, the accessibility module will * skip past the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotAreasplinerangeStatesOptions; /** * (Highcharts, Highstock) Sticky tracking of mouse events. When true, the * `mouseOut` event on a series isn't triggered until the mouse moves over * another series, or out of the plot area. When false, the `mouseOut` event * on a series is triggered when the mouse leaves the area around the * series' graph or markers. This also implies the tooltip when not shared. * When `stickyTracking` is false and `tooltip.shared` is false, the tooltip * will be hidden when moving the mouse between series. Defaults to true for * line and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The Y axis value to serve as the base for the * area, for distinguishing between values above and below a threshold. The * area between the graph and the threshold is filled. * * * If a number is given, the Y axis will scale to the threshold. * * * If `null`, the scaling behaves like a line series with fill between the * graph and the Y axis minimum. * * * If `Infinity` or `-Infinity`, the area between the graph and the * corresponing Y axis extreme is filled (since v6.1.0). */ threshold?: any; /** * (Highcharts, Highstock) A configuration object for the tooltip rendering * of each single series. Properties are inherited from tooltip, but only * the following properties can be defined on a series level. */ tooltip?: PlotAreasplinerangeTooltipOptions; /** * (Highcharts, Highstock) Whether the whole area or just the line should * respond to mouseover tooltips and other mouse or touch events. */ trackByArea?: boolean; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highcharts, Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotAreasplinerangeZonesOptions>; } /** * (Highcharts, Highstock) Events for each single point. */ export interface PlotAreasplinerangePointEventsOptions { /** * (Highcharts, Highstock) Fires when a point is clicked. One parameter, * `event`, is passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock) Callback that fires while dragging a point. The * mouse event is passed in as parameter. The original data can be accessed * from `e.origin`, and the new point values can be accessed from * `e.newPoints`. If there is only a single point being updated, it can be * accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock) Callback that fires when starting to drag a * point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock) Callback that fires when the point is dropped. * The parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse leaves the area close to the * point. One parameter, `event`, is passed to the function, containing * common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse enters the area close to the * point. One parameter, `event`, is passed to the function, containing * common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is updated programmatically * through the `.update()` method. One parameter, `event`, is passed to the * function. The new point options can be accessed through `event.options`. * Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts, Highstock) Properties for each single point. */ export interface PlotAreasplinerangePointOptions { /** * (Highcharts, Highstock) Events for each single point. */ events?: PlotAreasplinerangePointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotAreasplinerangeStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotAreasplinerangeStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotAreasplinerangeStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotAreasplinerangeStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotAreasplinerangeStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotAreasplinerangeStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotAreasplinerangeStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotAreasplinerangeStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotAreasplinerangeStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotAreasplinerangeStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotAreasplinerangeStatesHoverMarkerStatesHoverOptions; inactive?: PlotAreasplinerangeStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotAreasplinerangeStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotAreasplinerangeStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotAreasplinerangeStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts, Highstock) Options for the hovered series. These settings * override the normal state options when a series is moused over or touched. */ export interface PlotAreasplinerangeStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotAreasplinerangeStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Enable separate styles for the hovered series to * visualize that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotAreasplinerangeStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotAreasplinerangeStatesHoverMarkerOptions; } export interface PlotAreasplinerangeStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The opposite state of a hover for series. */ export interface PlotAreasplinerangeStatesInactiveOptions { animation?: PlotAreasplinerangeStatesInactiveAnimationOptions; /** * (Highcharts, Highstock) Opacity of series elements (dataLabels, line, * area). */ opacity?: number; } /** * (Highcharts, Highstock) The normal state of a series, or for point items in * column, pie and similar series. Currently only used for setting animation * when returning to normal state from hover. */ export interface PlotAreasplinerangeStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotAreasplinerangeStatesOptions { /** * (Highcharts, Highstock) Options for the hovered series. These settings * override the normal state options when a series is moused over or * touched. */ hover?: PlotAreasplinerangeStatesHoverOptions; /** * (Highcharts, Highstock) The opposite state of a hover for series. */ inactive?: PlotAreasplinerangeStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a series, or for point items * in column, pie and similar series. Currently only used for setting * animation when returning to normal state from hover. */ normal?: PlotAreasplinerangeStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotAreasplinerangeStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotAreasplinerangeStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotAreasplinerangeStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotAreasplinerangeStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotAreasplinerangeStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotAreasplinerangeStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotAreasplinerangeStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotAreasplinerangeStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotAreasplinerangeStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotAreasplinerangeStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotAreasplinerangeStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotAreasplinerangeStatesSelectMarkerStatesHoverOptions; inactive?: PlotAreasplinerangeStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotAreasplinerangeStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotAreasplinerangeStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotAreasplinerangeStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotAreasplinerangeStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotAreasplinerangeStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotAreasplinerangeStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotAreasplinerangeStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotAreasplinerangeTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts, Highstock) A configuration object for the tooltip rendering of * each single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ export interface PlotAreasplinerangeTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotAreasplinerangeTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highcharts, Highstock) Whether the tooltip should follow the mouse as it * moves across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts, Highstock) Whether the tooltip should update as the finger * moves on a touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts, Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts, Highstock) The HTML of the tooltip header line. Variables * are enclosed by curly brackets. Available variables are `point.key`, * `series.name`, `series.color` and other members from the `point` and * `series` objects. The `point.key` variable contains the category name, x * value or datetime string depending on the type of axis. For datetime * axes, the `point.key` date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts, Highstock) The name of a symbol to use for the border around * the tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts, Highstock) The number of milliseconds to wait until the * tooltip is hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts, Highstock) The HTML of the null point's line in the tooltip. * Works analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts, Highstock) Callback function to format the text of the * tooltip for visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts, Highstock) Whether to allow the tooltip to render outside * the chart's SVG element box. By default (`false`), the tooltip is * rendered within the chart's SVG element, which results in the tooltip * being aligned inside the chart area. For small charts, this may result in * clipping or overlapping. When `true`, a separate SVG element is created * and overlaid on the page, allowing the tooltip to be aligned inside the * page itself. */ outside?: boolean; /** * (Highcharts, Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts, Highstock) The HTML of the point's line in the tooltip. * Variables are enclosed by curly brackets. Available variables are * point.x, point.y, series. name and series.color and other properties on * the same form. Furthermore, `point.y` can be extended by the * `tooltip.valuePrefix` and `tooltip.valueSuffix` variables. This can also * be overridden for each series, which makes it a good hook for displaying * units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts, Highstock) A callback function for formatting the HTML * output for a single point in the tooltip. Like the `pointFormat` string, * but with more flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts, Highstock) How many decimals to show in each series' y * value. This is overridable in each series' tooltip options object. The * default is to preserve all decimals. */ valueDecimals?: number; /** * (Highcharts, Highstock) A string to prepend to each series' y value. * Overridable in each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts, Highstock) A string to append to each series' y value. * Overridable in each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotAreasplinerangeZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotAreasplineStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotAreasplineStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotAreasplineStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotAreasplineStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotAreasplineStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotAreasplineStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotAreasplineStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotAreasplineStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotAreasplineStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotAreasplineStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotAreasplineStatesHoverMarkerStatesHoverOptions; inactive?: PlotAreasplineStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotAreasplineStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotAreasplineStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotAreasplineStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts, Highstock) Options for the hovered series. These settings * override the normal state options when a series is moused over or touched. */ export interface PlotAreasplineStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotAreasplineStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Enable separate styles for the hovered series to * visualize that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotAreasplineStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotAreasplineStatesHoverMarkerOptions; } export interface PlotAreasplineStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The opposite state of a hover for series. */ export interface PlotAreasplineStatesInactiveOptions { animation?: PlotAreasplineStatesInactiveAnimationOptions; /** * (Highcharts, Highstock) Opacity of series elements (dataLabels, line, * area). */ opacity?: number; } /** * (Highcharts, Highstock) The normal state of a series, or for point items in * column, pie and similar series. Currently only used for setting animation * when returning to normal state from hover. */ export interface PlotAreasplineStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotAreasplineStatesOptions { /** * (Highcharts, Highstock) Options for the hovered series. These settings * override the normal state options when a series is moused over or * touched. */ hover?: PlotAreasplineStatesHoverOptions; /** * (Highcharts, Highstock) The opposite state of a hover for series. */ inactive?: PlotAreasplineStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a series, or for point items * in column, pie and similar series. Currently only used for setting * animation when returning to normal state from hover. */ normal?: PlotAreasplineStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotAreasplineStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotAreasplineStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotAreasplineStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotAreasplineStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotAreasplineStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotAreasplineStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotAreasplineStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotAreasplineStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotAreasplineStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotAreasplineStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotAreasplineStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotAreasplineStatesSelectMarkerStatesHoverOptions; inactive?: PlotAreasplineStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotAreasplineStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotAreasplineStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotAreasplineStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotAreasplineStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotAreasplineStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotAreasplineStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotAreasplineStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotAreasplineTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts, Highstock) A configuration object for the tooltip rendering of * each single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ export interface PlotAreasplineTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotAreasplineTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highcharts, Highstock) Whether the tooltip should follow the mouse as it * moves across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts, Highstock) Whether the tooltip should update as the finger * moves on a touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts, Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts, Highstock) The HTML of the tooltip header line. Variables * are enclosed by curly brackets. Available variables are `point.key`, * `series.name`, `series.color` and other members from the `point` and * `series` objects. The `point.key` variable contains the category name, x * value or datetime string depending on the type of axis. For datetime * axes, the `point.key` date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts, Highstock) The name of a symbol to use for the border around * the tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts, Highstock) The number of milliseconds to wait until the * tooltip is hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts, Highstock) The HTML of the null point's line in the tooltip. * Works analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts, Highstock) Callback function to format the text of the * tooltip for visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts, Highstock) Whether to allow the tooltip to render outside * the chart's SVG element box. By default (`false`), the tooltip is * rendered within the chart's SVG element, which results in the tooltip * being aligned inside the chart area. For small charts, this may result in * clipping or overlapping. When `true`, a separate SVG element is created * and overlaid on the page, allowing the tooltip to be aligned inside the * page itself. */ outside?: boolean; /** * (Highcharts, Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts, Highstock) The HTML of the point's line in the tooltip. * Variables are enclosed by curly brackets. Available variables are * point.x, point.y, series. name and series.color and other properties on * the same form. Furthermore, `point.y` can be extended by the * `tooltip.valuePrefix` and `tooltip.valueSuffix` variables. This can also * be overridden for each series, which makes it a good hook for displaying * units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts, Highstock) A callback function for formatting the HTML * output for a single point in the tooltip. Like the `pointFormat` string, * but with more flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts, Highstock) How many decimals to show in each series' y * value. This is overridable in each series' tooltip options object. The * default is to preserve all decimals. */ valueDecimals?: number; /** * (Highcharts, Highstock) A string to prepend to each series' y value. * Overridable in each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts, Highstock) A string to append to each series' y value. * Overridable in each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotAreasplineZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotAreaStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotAreaStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotAreaStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotAreaStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotAreaStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotAreaStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotAreaStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotAreaStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotAreaStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotAreaStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotAreaStatesHoverMarkerStatesHoverOptions; inactive?: PlotAreaStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotAreaStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotAreaStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotAreaStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts, Highstock) Options for the hovered series. These settings * override the normal state options when a series is moused over or touched. */ export interface PlotAreaStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotAreaStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Enable separate styles for the hovered series to * visualize that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotAreaStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotAreaStatesHoverMarkerOptions; } export interface PlotAreaStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The opposite state of a hover for series. */ export interface PlotAreaStatesInactiveOptions { animation?: PlotAreaStatesInactiveAnimationOptions; /** * (Highcharts, Highstock) Opacity of series elements (dataLabels, line, * area). */ opacity?: number; } /** * (Highcharts, Highstock) The normal state of a series, or for point items in * column, pie and similar series. Currently only used for setting animation * when returning to normal state from hover. */ export interface PlotAreaStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotAreaStatesOptions { /** * (Highcharts, Highstock) Options for the hovered series. These settings * override the normal state options when a series is moused over or * touched. */ hover?: PlotAreaStatesHoverOptions; /** * (Highcharts, Highstock) The opposite state of a hover for series. */ inactive?: PlotAreaStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a series, or for point items * in column, pie and similar series. Currently only used for setting * animation when returning to normal state from hover. */ normal?: PlotAreaStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotAreaStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotAreaStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotAreaStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotAreaStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotAreaStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotAreaStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotAreaStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotAreaStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotAreaStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotAreaStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotAreaStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotAreaStatesSelectMarkerStatesHoverOptions; inactive?: PlotAreaStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotAreaStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotAreaStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotAreaStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotAreaStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotAreaStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotAreaStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotAreaStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotAreaTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts, Highstock) A configuration object for the tooltip rendering of * each single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ export interface PlotAreaTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotAreaTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highcharts, Highstock) Whether the tooltip should follow the mouse as it * moves across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts, Highstock) Whether the tooltip should update as the finger * moves on a touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts, Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts, Highstock) The HTML of the tooltip header line. Variables * are enclosed by curly brackets. Available variables are `point.key`, * `series.name`, `series.color` and other members from the `point` and * `series` objects. The `point.key` variable contains the category name, x * value or datetime string depending on the type of axis. For datetime * axes, the `point.key` date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts, Highstock) The name of a symbol to use for the border around * the tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts, Highstock) The number of milliseconds to wait until the * tooltip is hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts, Highstock) The HTML of the null point's line in the tooltip. * Works analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts, Highstock) Callback function to format the text of the * tooltip for visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts, Highstock) Whether to allow the tooltip to render outside * the chart's SVG element box. By default (`false`), the tooltip is * rendered within the chart's SVG element, which results in the tooltip * being aligned inside the chart area. For small charts, this may result in * clipping or overlapping. When `true`, a separate SVG element is created * and overlaid on the page, allowing the tooltip to be aligned inside the * page itself. */ outside?: boolean; /** * (Highcharts, Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts, Highstock) The HTML of the point's line in the tooltip. * Variables are enclosed by curly brackets. Available variables are * point.x, point.y, series. name and series.color and other properties on * the same form. Furthermore, `point.y` can be extended by the * `tooltip.valuePrefix` and `tooltip.valueSuffix` variables. This can also * be overridden for each series, which makes it a good hook for displaying * units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts, Highstock) A callback function for formatting the HTML * output for a single point in the tooltip. Like the `pointFormat` string, * but with more flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts, Highstock) How many decimals to show in each series' y * value. This is overridable in each series' tooltip options object. The * default is to preserve all decimals. */ valueDecimals?: number; /** * (Highcharts, Highstock) A string to prepend to each series' y value. * Overridable in each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts, Highstock) A string to append to each series' y value. * Overridable in each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotAreaZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotAroonAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotAroonAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotAroonAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotAroonAnimationOptions { duration?: number; } /** * (Highstock) aroonDown line options. */ export interface PlotAroonAroonDownOptions { /** * (Highstock) Styles for an aroonDown line. */ styles?: PlotAroonAroonDownStylesOptions; } /** * (Highstock) Styles for an aroonDown line. */ export interface PlotAroonAroonDownStylesOptions { /** * (Highstock) Color of the line. If not set, it's inherited from * plotOptions.aroon.color. */ lineColor?: ColorString; /** * (Highstock) Pixel width of the line. */ lineWidth?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotAroonConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotAroonConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotAroonConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotAroonConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotAroonConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotAroonConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotAroonConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotAroonDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: string; /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotAroonDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotAroonDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotAroonDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotAroonDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotAroonDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotAroonDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotAroonDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotAroonEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotAroonLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotAroonLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotAroonLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotAroonLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotAroonLastVisiblePriceLabelOptions; } /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotAroonMarkerOptions { /** * (Highstock) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highstock) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highstock) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. */ radius?: number; /** * (Highstock) States for a single point marker. */ states?: PlotAroonMarkerStatesOptions; /** * (Highstock) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highstock) Animation when hovering over the marker. */ export interface PlotAroonMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highstock) The hover state for a single point marker. */ export interface PlotAroonMarkerStatesHoverOptions { /** * (Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotAroonMarkerStatesHoverAnimationOptions); /** * (Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highstock) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotAroonMarkerStatesInactiveOptions { /** * (Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highstock) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotAroonMarkerStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highstock) States for a single point marker. */ export interface PlotAroonMarkerStatesOptions { /** * (Highstock) The hover state for a single point marker. */ hover?: PlotAroonMarkerStatesHoverOptions; inactive?: PlotAroonMarkerStatesInactiveOptions; /** * (Highstock) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotAroonMarkerStatesNormalOptions; /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotAroonMarkerStatesSelectOptions; } /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotAroonMarkerStatesSelectOptions { /** * (Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Aroon. This series requires the `linkedTo` option to be set and * should be loaded after the `stock/indicators/indicators.js`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `aroon` series are defined in plotOptions.aroon. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotAroonOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotAroonAccessibilityOptions); /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotAroonAnimationOptions); /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) aroonDown line options. */ aroonDown?: PlotAroonAroonDownOptions; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highstock) Whether to compare indicator to the main series values or * indicator values. */ compareToMain?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotAroonConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotAroonDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotAroonDragDropOptions; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotAroonEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotAroonLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotAroonLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotAroonLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The main series ID that indicator will be * based on. Required for this indicator. */ linkedTo?: string; /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotAroonMarkerOptions; /** * (Highstock) The name of the series as shown in the legend, tooltip etc. * If not set, it will be based on a technical indicator type and default * params. */ name?: string; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Paramters used in calculation of aroon series points. */ params?: PlotAroonParamsOptions; /** * (Highstock) Properties for each single point. */ point?: PlotAroonPointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotAroonStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotAroonTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotAroonZonesOptions>; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotAroonoscillatorAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotAroonoscillatorAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotAroonoscillatorAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotAroonoscillatorAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotAroonoscillatorConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotAroonoscillatorConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotAroonoscillatorConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotAroonoscillatorConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotAroonoscillatorConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotAroonoscillatorConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotAroonoscillatorConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotAroonoscillatorDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: string; /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotAroonoscillatorDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotAroonoscillatorDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotAroonoscillatorDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotAroonoscillatorDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotAroonoscillatorDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotAroonoscillatorDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotAroonoscillatorDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotAroonoscillatorEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotAroonoscillatorLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotAroonoscillatorLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotAroonoscillatorLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotAroonoscillatorLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotAroonoscillatorLastVisiblePriceLabelOptions; } /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotAroonoscillatorMarkerOptions { /** * (Highstock) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highstock) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highstock) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. */ radius?: number; /** * (Highstock) States for a single point marker. */ states?: PlotAroonoscillatorMarkerStatesOptions; /** * (Highstock) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highstock) Animation when hovering over the marker. */ export interface PlotAroonoscillatorMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highstock) The hover state for a single point marker. */ export interface PlotAroonoscillatorMarkerStatesHoverOptions { /** * (Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotAroonoscillatorMarkerStatesHoverAnimationOptions); /** * (Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highstock) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotAroonoscillatorMarkerStatesInactiveOptions { /** * (Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highstock) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotAroonoscillatorMarkerStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highstock) States for a single point marker. */ export interface PlotAroonoscillatorMarkerStatesOptions { /** * (Highstock) The hover state for a single point marker. */ hover?: PlotAroonoscillatorMarkerStatesHoverOptions; inactive?: PlotAroonoscillatorMarkerStatesInactiveOptions; /** * (Highstock) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotAroonoscillatorMarkerStatesNormalOptions; /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotAroonoscillatorMarkerStatesSelectOptions; } /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotAroonoscillatorMarkerStatesSelectOptions { /** * (Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Aroon Oscillator. This series requires the `linkedTo` option to * be set and should be loaded after the `stock/indicators/indicators.js` and * `stock/indicators/aroon.js`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `aroonoscillator` series are defined in * plotOptions.aroonoscillator. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotAroonoscillatorOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotAroonoscillatorAccessibilityOptions); /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotAroonoscillatorAnimationOptions); /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highstock) Whether to compare indicator to the main series values or * indicator values. */ compareToMain?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotAroonoscillatorConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotAroonoscillatorDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotAroonoscillatorDragDropOptions; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotAroonoscillatorEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotAroonoscillatorLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotAroonoscillatorLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotAroonoscillatorLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The main series ID that indicator will be * based on. Required for this indicator. */ linkedTo?: string; /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotAroonoscillatorMarkerOptions; /** * (Highstock) The name of the series as shown in the legend, tooltip etc. * If not set, it will be based on a technical indicator type and default * params. */ name?: string; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Paramters used in calculation of aroon oscillator series * points. */ params?: PlotAroonoscillatorParamsOptions; /** * (Highstock) Properties for each single point. */ point?: PlotAroonoscillatorPointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotAroonoscillatorStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotAroonoscillatorTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotAroonoscillatorZonesOptions>; } /** * (Highstock) Paramters used in calculation of aroon oscillator series points. */ export interface PlotAroonoscillatorParamsOptions { /** * (Highstock) Period for Aroon Oscillator */ period?: number; } /** * (Highstock) Events for each single point. */ export interface PlotAroonoscillatorPointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotAroonoscillatorPointOptions { /** * (Highstock) Events for each single point. */ events?: PlotAroonoscillatorPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotAroonoscillatorStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotAroonoscillatorStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotAroonoscillatorStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotAroonoscillatorStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotAroonoscillatorStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotAroonoscillatorStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotAroonoscillatorStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotAroonoscillatorStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotAroonoscillatorStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotAroonoscillatorStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotAroonoscillatorStatesHoverMarkerStatesHoverOptions; inactive?: PlotAroonoscillatorStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotAroonoscillatorStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotAroonoscillatorStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotAroonoscillatorStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotAroonoscillatorStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotAroonoscillatorStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotAroonoscillatorStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotAroonoscillatorStatesHoverMarkerOptions; } export interface PlotAroonoscillatorStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotAroonoscillatorStatesInactiveOptions { animation?: PlotAroonoscillatorStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotAroonoscillatorStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotAroonoscillatorStatesOptions { /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotAroonoscillatorStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotAroonoscillatorStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotAroonoscillatorStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotAroonoscillatorStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotAroonoscillatorStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotAroonoscillatorStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotAroonoscillatorStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotAroonoscillatorStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotAroonoscillatorStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotAroonoscillatorStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotAroonoscillatorStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotAroonoscillatorStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotAroonoscillatorStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotAroonoscillatorStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotAroonoscillatorStatesSelectMarkerStatesHoverOptions; inactive?: PlotAroonoscillatorStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotAroonoscillatorStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotAroonoscillatorStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotAroonoscillatorStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotAroonoscillatorStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotAroonoscillatorStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotAroonoscillatorStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotAroonoscillatorStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotAroonoscillatorTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotAroonoscillatorTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotAroonoscillatorTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) Number of decimals in indicator series. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotAroonoscillatorZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highstock) Paramters used in calculation of aroon series points. */ export interface PlotAroonParamsOptions { /** * (Highstock) Period for Aroon indicator */ period?: number; } /** * (Highstock) Events for each single point. */ export interface PlotAroonPointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotAroonPointOptions { /** * (Highstock) Events for each single point. */ events?: PlotAroonPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotAroonStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotAroonStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotAroonStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotAroonStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotAroonStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotAroonStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotAroonStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotAroonStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotAroonStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotAroonStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotAroonStatesHoverMarkerStatesHoverOptions; inactive?: PlotAroonStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotAroonStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotAroonStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotAroonStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotAroonStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotAroonStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotAroonStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotAroonStatesHoverMarkerOptions; } export interface PlotAroonStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotAroonStatesInactiveOptions { animation?: PlotAroonStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotAroonStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotAroonStatesOptions { /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotAroonStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotAroonStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotAroonStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotAroonStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotAroonStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotAroonStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotAroonStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotAroonStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotAroonStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotAroonStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotAroonStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotAroonStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotAroonStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotAroonStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotAroonStatesSelectMarkerStatesHoverOptions; inactive?: PlotAroonStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotAroonStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotAroonStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotAroonStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotAroonStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotAroonStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotAroonStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotAroonStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotAroonTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotAroonTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotAroonTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) Number of decimals in indicator series. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotAroonZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotAtrAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotAtrAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotAtrAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotAtrAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotAtrConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotAtrConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotAtrConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotAtrConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotAtrConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotAtrConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotAtrConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotAtrDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotAtrDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotAtrDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotAtrDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotAtrDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotAtrDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotAtrDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotAtrDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotAtrEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotAtrLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotAtrLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotAtrLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotAtrLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotAtrLastVisiblePriceLabelOptions; } /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotAtrMarkerOptions { /** * (Highstock) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highstock) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highstock) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. */ radius?: number; /** * (Highstock) States for a single point marker. */ states?: PlotAtrMarkerStatesOptions; /** * (Highstock) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highstock) Animation when hovering over the marker. */ export interface PlotAtrMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highstock) The hover state for a single point marker. */ export interface PlotAtrMarkerStatesHoverOptions { /** * (Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotAtrMarkerStatesHoverAnimationOptions); /** * (Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highstock) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotAtrMarkerStatesInactiveOptions { /** * (Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highstock) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotAtrMarkerStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highstock) States for a single point marker. */ export interface PlotAtrMarkerStatesOptions { /** * (Highstock) The hover state for a single point marker. */ hover?: PlotAtrMarkerStatesHoverOptions; inactive?: PlotAtrMarkerStatesInactiveOptions; /** * (Highstock) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotAtrMarkerStatesNormalOptions; /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotAtrMarkerStatesSelectOptions; } /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotAtrMarkerStatesSelectOptions { /** * (Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Average true range indicator (ATR). This series requires * `linkedTo` option to be set. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `atr` series are defined in plotOptions.atr. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotAtrOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotAtrAccessibilityOptions); /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotAtrAnimationOptions); /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highstock) Whether to compare indicator to the main series values or * indicator values. */ compareToMain?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotAtrConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotAtrDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotAtrDragDropOptions; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotAtrEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotAtrLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotAtrLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotAtrLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The main series ID that indicator will be * based on. Required for this indicator. */ linkedTo?: string; /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotAtrMarkerOptions; /** * (Highstock) The name of the series as shown in the legend, tooltip etc. * If not set, it will be based on a technical indicator type and default * params. */ name?: string; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Paramters used in calculation of regression series' points. */ params?: PlotAtrParamsOptions; /** * (Highstock) Properties for each single point. */ point?: PlotAtrPointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotAtrStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotAtrTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotAtrZonesOptions>; } /** * (Highstock) Paramters used in calculation of regression series' points. */ export interface PlotAtrParamsOptions { /** * (Highstock) The point index which indicator calculations will base. For * example using OHLC data, index=2 means the indicator will be calculated * using Low values. */ index?: number; /** * (Highstock) The base period for indicator calculations. This is the * number of data points which are taken into account for the indicator * calculations. */ period?: number; } /** * (Highstock) Events for each single point. */ export interface PlotAtrPointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotAtrPointOptions { /** * (Highstock) Events for each single point. */ events?: PlotAtrPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotAtrStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotAtrStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotAtrStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotAtrStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotAtrStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotAtrStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotAtrStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotAtrStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotAtrStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotAtrStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotAtrStatesHoverMarkerStatesHoverOptions; inactive?: PlotAtrStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotAtrStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotAtrStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotAtrStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotAtrStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotAtrStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotAtrStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotAtrStatesHoverMarkerOptions; } export interface PlotAtrStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotAtrStatesInactiveOptions { animation?: PlotAtrStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotAtrStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotAtrStatesOptions { /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotAtrStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotAtrStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotAtrStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotAtrStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotAtrStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotAtrStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotAtrStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotAtrStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotAtrStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotAtrStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotAtrStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotAtrStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotAtrStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotAtrStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotAtrStatesSelectMarkerStatesHoverOptions; inactive?: PlotAtrStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotAtrStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotAtrStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotAtrStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotAtrStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotAtrStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotAtrStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotAtrStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotAtrTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotAtrTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotAtrTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) Number of decimals in indicator series. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotAtrZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts) Keyboard navigation for a series */ export interface PlotBarAccessibilityKeyboardNavigationOptions { /** * (Highcharts) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highcharts) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotBarAccessibilityOptions { /** * (Highcharts) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highcharts) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highcharts) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotBarAccessibilityKeyboardNavigationOptions); /** * (Highcharts) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotBarAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotBarConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotBarConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotBarConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotBarConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotBarConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotBarConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotBarConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotBarDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. Defaults to `10`. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts) Options for the drag handles. */ export interface PlotBarDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface PlotBarDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotBarDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: PlotBarDragDropGuideBoxDefaultOptions; } /** * (Highcharts) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotBarDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: PlotBarDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotBarDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotBarEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotBarLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotBarLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotBarLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotBarLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotBarLastVisiblePriceLabelOptions; } /** * (Highcharts) A bar series is a special type of column series where the * columns are horizontal. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `bar` series are defined in plotOptions.bar. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotBarOptions { /** * (Highcharts) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotBarAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highcharts) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotBarAnimationOptions); /** * (Highcharts) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highcharts) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highcharts, Highstock, Gantt) The color of the border surrounding each * column or bar. * * In styled mode, the border stroke can be set with the `.highcharts-point` * rule. */ borderColor?: ColorString; /** * (Highcharts, Highstock, Gantt) The corner radius of the border * surrounding each column or bar. */ borderRadius?: number; /** * (Highcharts, Highstock, Gantt) The width of the border surrounding each * column or bar. Defaults to `1` when there is room for a border, but to * `0` when the columns are so dense that a border would cover the next * column. * * In styled mode, the stroke width can be set with the `.highcharts-point` * rule. */ borderWidth?: number; /** * (Highcharts) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highcharts) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts, Highstock, Gantt) When using automatic point colors pulled * from the global colors or series-specific plotOptions.column.colors * collections, this option determines whether the chart should receive one * color per series or one color per point. * * In styled mode, the `colors` or `series.colors` arrays are not supported, * and instead this option gives the points individual color class names on * the form `highcharts-color-{n}`. */ colorByPoint?: boolean; /** * (Highcharts) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) A series specific or series type specific * color set to apply instead of the global colors when colorByPoint is * true. */ colors?: Array<(ColorString|GradientColorObject|PatternObject)>; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotBarConnectorsOptions; /** * (Highcharts, Highstock, Gantt) When true, each column edge is rounded to * its nearest pixel in order to render sharp on screen. In some cases, when * there are a lot of densely packed columns, this leads to visible * difference in column widths or distance between columns. In these cases, * setting `crisp` to `false` may look better, even though each column is * rendered blurry. */ crisp?: boolean; /** * (Highcharts, Highstock, Gantt) When the series contains less points than * the crop threshold, all points are drawn, event if the points fall * outside the visible plot area at the current zoom. The advantage of * drawing all points (including markers and columns), is that animation is * performed on updates. On the other hand, when the series contains more * points than the crop threshold, the series data is cropped to only * contain points that fall within the plot area. The advantage of cropping * away invisible points is to increase performance on large series. */ cropThreshold?: number; /** * (Highcharts) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotBarDataGroupingOptions; /** * (Highcharts) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) Depth of the columns in a 3D column chart. Requires * `highcharts-3d.js`. */ depth?: number; /** * (Highcharts) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotBarDragDropOptions; /** * (Highcharts) 3D columns only. The color of the edges. Similar to * `borderColor`, except it defaults to the same color as the column. */ edgeColor?: ColorString; /** * (Highcharts) 3D columns only. The width of the colored edges. */ edgeWidth?: number; /** * (Highcharts) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotBarEventsOptions; /** * (Highcharts) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highcharts) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highcharts, Highstock, Gantt) Whether to group non-stacked columns or to * let them render independent of each other. Non-grouped columns will be * laid out individually and overlap each other. */ grouping?: boolean; /** * (Highcharts, Highstock, Gantt) Padding between each value groups, in x * axis units. */ groupPadding?: number; /** * (Highcharts) The spacing between columns on the Z Axis in a 3D chart. * Requires `highcharts-3d.js`. */ groupZPadding?: number; /** * (Highcharts) Export-data module required. When set to `false` will * prevent the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts) An array specifying which option maps to which key in the * data point array. This makes it convenient to work with unstructured data * arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotBarLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotBarLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotBarLastVisiblePriceOptions; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts, Highstock, Gantt) The maximum allowed pixel width for a * column, translated to the height of a bar in a bar chart. This prevents * the columns from becoming too wide when there is a small number of points * in the chart. */ maxPointWidth?: number; /** * (Highcharts, Highstock, Gantt) The minimal height for a column or width * for a bar. By default, 0 values are not shown. To visualize a 0 (or close * to zero) point, set the minimal point length to a pixel value like 3\. In * stacked column charts, minPointLength might not be respected for tightly * packed values. */ minPointLength?: number; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts) The color for the parts of the graph or points that are * below the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highcharts) Properties for each single point. */ point?: PlotBarPointOptions; /** * (Highcharts) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, `pointInterval` defines the interval of the x values. For * example, if a series contains one value every decade starting from year * 0, set `pointInterval` to `10`. In true `datetime` axes, the * `pointInterval` is set in milliseconds. * * It can be also be combined with `pointIntervalUnit` to draw irregular * time intervals. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointInterval?: number; /** * (Highcharts, Highstock, Gantt) On datetime series, this allows for * setting the pointInterval to irregular time units, `day`, `month` and * `year`. A day is usually the same as 24 hours, but `pointIntervalUnit` * also takes the DST crossover into consideration when dealing with local * time. Combine this option with `pointInterval` to draw weeks, quarters, 6 * months, 10 years etc. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointIntervalUnit?: OptionsPointIntervalUnitValue; /** * (Highcharts, Highstock, Gantt) Padding between each column or bar, in x * axis units. */ pointPadding?: number; /** * (Highcharts, Highstock, Gantt) Possible values: `"on"`, `"between"`, * `number`. * * In a column chart, when pointPlacement is `"on"`, the point will not * create any padding of the X axis. In a polar column chart this means that * the first column points directly north. If the pointPlacement is * `"between"`, the columns will be laid out between ticks. This is useful * for example for visualising an amount between two points in time or in a * certain sector of a polar chart. * * Since Highcharts 3.0.2, the point placement can also be numeric, where 0 * is on the axis value, -0.5 is between this value and the previous, and * 0.5 is between this value and the next. Unlike the textual options, * numeric point placement options won't affect axis padding. * * Note that pointPlacement needs a pointRange to work. For column series * this is computed, but for line-type series it needs to be set. * * For the `xrange` series type and gantt charts, if the Y axis is a * category axis, the `pointPlacement` applies to the Y axis rather than the * (typically datetime) X axis. * * Defaults to `undefined` in cartesian charts, `"between"` in polar charts. */ pointPlacement?: (number|string); /** * (Highcharts, Highstock, Gantt) The X axis range that each point is valid * for. This determines the width of the column. On a categorized axis, the * range will be 1 by default (one category unit). On linear and datetime * axes, the range will be computed as the distance between the two closest * data points. * * The default `null` means it is computed automatically, but this option * can be used to override the automatic value. */ pointRange?: (number|null); /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, pointStart defines on what value to start. For example, if a * series contains one yearly value starting from 1945, set pointStart to * 1945. */ pointStart?: number; /** * (Highcharts, Highstock, Gantt) A pixel value specifying a fixed width for * each column or bar. When `null`, the width is calculated from the * `pointPadding` and `groupPadding`. */ pointWidth?: number; /** * (Highcharts) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highcharts) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highcharts) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts) If set to `true`, the accessibility module will skip past * the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; /** * (Highcharts, Highstock) Whether to stack the values of each series on top * of each other. Possible values are `undefined` to disable, `"normal"` to * stack by value or `"percent"`. When stacking is enabled, data must be * sorted in ascending X order. A special stacking option is with the * streamgraph series type, where the stacking option is set to `"stream"`. * The second one is `"overlap"`, which only applies to waterfall series. */ stacking?: OptionsStackingValue; states?: PlotBarStatesOptions; /** * (Highcharts) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts) The Y axis value to serve as the base for the columns, for * distinguishing between values above and below a threshold. If `null`, the * columns extend from the padding Y axis minimum. */ threshold?: number; /** * (Highcharts) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotBarTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highcharts) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotBarZonesOptions>; } /** * (Highcharts) Events for each single point. */ export interface PlotBarPointEventsOptions { /** * (Highcharts) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts) Callback that fires when the point is dropped. The * parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts) Fires when the point is removed using the `.remove()` * method. One parameter, `event`, is passed to the function. Returning * `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts) Fires when the point is unselected either programmatically * or following a click on the point. One parameter, `event`, is passed to * the function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) Properties for each single point. */ export interface PlotBarPointOptions { /** * (Highcharts) Events for each single point. */ events?: PlotBarPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotBarStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock, Gantt) Options for the hovered point. These settings * override the normal state options when a point is moused over or touched. */ export interface PlotBarStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotBarStatesHoverAnimationOptions); /** * (Highcharts, Gantt) A specific border color for the hovered point. * Defaults to inherit the normal state border color. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) How much to brighten the point on * interaction. Requires the main color to be defined in hex or rgb(a) * format. * * In styled mode, the hover brightening is by default replaced with a * fill-opacity set in the `.highcharts-point:hover` rule. */ brightness?: number; /** * (Highcharts, Gantt) A specific color for the hovered point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) Enable separate styles for the hovered * series to visualize that the user hovers either the series itself or the * legend. */ enabled?: boolean; } export interface PlotBarStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts) The opposite state of a hover for series. */ export interface PlotBarStatesInactiveOptions { animation?: PlotBarStatesInactiveAnimationOptions; /** * (Highcharts) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highcharts) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotBarStatesNormalOptions { /** * (Highcharts) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotBarStatesOptions { /** * (Highcharts, Highstock, Gantt) Options for the hovered point. These * settings override the normal state options when a point is moused over or * touched. */ hover?: PlotBarStatesHoverOptions; /** * (Highcharts) The opposite state of a hover for series. */ inactive?: PlotBarStatesInactiveOptions; /** * (Highcharts) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotBarStatesNormalOptions; /** * (Highcharts, Highstock, Gantt) Options for the selected point. These * settings override the normal state options when a point is selected. */ select?: PlotBarStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotBarStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock, Gantt) Options for the selected point. These settings * override the normal state options when a point is selected. */ export interface PlotBarStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotBarStatesSelectAnimationOptions; /** * (Highcharts, Highstock, Gantt) A specific border color for the selected * point. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) A specific color for the selected point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) Enable separate styles for the hovered * series to visualize that the user hovers either the series itself or the * legend. */ enabled?: boolean; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotBarTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotBarTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotBarTooltipDateTimeLabelFormatsOptions|Dictionary<string>); distance?: number; /** * (Highcharts) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts) The name of a symbol to use for the border around the * tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highcharts) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts) How many decimals to show in each series' y value. This is * overridable in each series' tooltip options object. The default is to * preserve all decimals. */ valueDecimals?: number; /** * (Highcharts) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotBarZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotBbAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotBbAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotBbAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotBbAnimationOptions { duration?: number; } /** * (Highstock) Bottom line options. */ export interface PlotBbBottomLineOptions { /** * (Highstock) Styles for a bottom line. */ styles?: PlotBbBottomLineStylesOptions; } /** * (Highstock) Styles for a bottom line. */ export interface PlotBbBottomLineStylesOptions { /** * (Highstock) Color of the line. If not set, it's inherited from * plotOptions.bb.color. */ lineColor?: ColorString; /** * (Highstock) Pixel width of the line. */ lineWidth?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotBbConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotBbConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotBbConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotBbConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotBbConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotBbConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotBbConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotBbDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: string; /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotBbDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotBbDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotBbDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotBbDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotBbDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotBbDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotBbDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotBbEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotBbLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotBbLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotBbLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotBbLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotBbLastVisiblePriceLabelOptions; } /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotBbMarkerOptions { /** * (Highstock) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highstock) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highstock) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. */ radius?: number; /** * (Highstock) States for a single point marker. */ states?: PlotBbMarkerStatesOptions; /** * (Highstock) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highstock) Animation when hovering over the marker. */ export interface PlotBbMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highstock) The hover state for a single point marker. */ export interface PlotBbMarkerStatesHoverOptions { /** * (Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotBbMarkerStatesHoverAnimationOptions); /** * (Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highstock) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotBbMarkerStatesInactiveOptions { /** * (Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highstock) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotBbMarkerStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highstock) States for a single point marker. */ export interface PlotBbMarkerStatesOptions { /** * (Highstock) The hover state for a single point marker. */ hover?: PlotBbMarkerStatesHoverOptions; inactive?: PlotBbMarkerStatesInactiveOptions; /** * (Highstock) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotBbMarkerStatesNormalOptions; /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotBbMarkerStatesSelectOptions; } /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotBbMarkerStatesSelectOptions { /** * (Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Bollinger bands (BB). This series requires the `linkedTo` option * to be set and should be loaded after the `stock/indicators/indicators.js` * file. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `bb` series are defined in plotOptions.bb. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotBbOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotBbAccessibilityOptions); /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotBbAnimationOptions); /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highstock) Bottom line options. */ bottomLine?: PlotBbBottomLineOptions; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highstock) Whether to compare indicator to the main series values or * indicator values. */ compareToMain?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotBbConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotBbDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotBbDragDropOptions; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotBbEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotBbLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotBbLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotBbLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The main series ID that indicator will be * based on. Required for this indicator. */ linkedTo?: string; /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotBbMarkerOptions; /** * (Highstock) The name of the series as shown in the legend, tooltip etc. * If not set, it will be based on a technical indicator type and default * params. */ name?: string; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Paramters used in calculation of regression series' points. */ params?: PlotBbParamsOptions; /** * (Highstock) Properties for each single point. */ point?: PlotBbPointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotBbStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotBbTooltipOptions; /** * (Highstock) Top line options. */ topLine?: PlotBbTopLineOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotBbZonesOptions>; } /** * (Highstock) Paramters used in calculation of regression series' points. */ export interface PlotBbParamsOptions { /** * (Highstock) The point index which indicator calculations will base. For * example using OHLC data, index=2 means the indicator will be calculated * using Low values. */ index?: number; /** * (Highstock) The base period for indicator calculations. This is the * number of data points which are taken into account for the indicator * calculations. */ period?: number; /** * (Highstock) Standard deviation for top and bottom bands. */ standardDeviation?: number; } /** * (Highstock) Events for each single point. */ export interface PlotBbPointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotBbPointOptions { /** * (Highstock) Events for each single point. */ events?: PlotBbPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotBbStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotBbStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotBbStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotBbStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotBbStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotBbStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotBbStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotBbStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotBbStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotBbStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotBbStatesHoverMarkerStatesHoverOptions; inactive?: PlotBbStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotBbStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotBbStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotBbStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotBbStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotBbStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotBbStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotBbStatesHoverMarkerOptions; } export interface PlotBbStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotBbStatesInactiveOptions { animation?: PlotBbStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotBbStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotBbStatesOptions { /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotBbStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotBbStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotBbStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotBbStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotBbStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotBbStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotBbStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotBbStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotBbStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotBbStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotBbStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotBbStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotBbStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotBbStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotBbStatesSelectMarkerStatesHoverOptions; inactive?: PlotBbStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotBbStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotBbStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotBbStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotBbStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotBbStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotBbStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotBbStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotBbTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotBbTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotBbTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) Number of decimals in indicator series. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highstock) Top line options. */ export interface PlotBbTopLineOptions { /** * (Highstock) Styles for a bottom line. */ styles?: PlotBbTopLineStylesOptions; } /** * (Highstock) Styles for a bottom line. */ export interface PlotBbTopLineStylesOptions { /** * (Highstock) Color of the line. If not set, it's inherited from * plotOptions.bb.color. */ lineColor?: ColorString; /** * (Highstock) Pixel width of the line. */ lineWidth?: number; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotBbZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts) Keyboard navigation for a series */ export interface PlotBellcurveAccessibilityKeyboardNavigationOptions { /** * (Highcharts) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highcharts) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotBellcurveAccessibilityOptions { /** * (Highcharts) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highcharts) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highcharts) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotBellcurveAccessibilityKeyboardNavigationOptions); /** * (Highcharts) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotBellcurveAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotBellcurveConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotBellcurveConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotBellcurveConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotBellcurveConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotBellcurveConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotBellcurveConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotBellcurveConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotBellcurveDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts) Options for the drag handles. */ export interface PlotBellcurveDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface PlotBellcurveDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotBellcurveDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: PlotBellcurveDragDropGuideBoxDefaultOptions; } /** * (Highcharts) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotBellcurveDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: PlotBellcurveDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotBellcurveDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotBellcurveEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotBellcurveLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotBellcurveLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotBellcurveLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotBellcurveLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotBellcurveLastVisiblePriceLabelOptions; } /** * (Highcharts) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotBellcurveMarkerOptions { /** * (Highcharts) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highcharts) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highcharts) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highcharts) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts) The radius of the point marker. */ radius?: number; /** * (Highcharts) States for a single point marker. */ states?: PlotBellcurveMarkerStatesOptions; /** * (Highcharts) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts) Animation when hovering over the marker. */ export interface PlotBellcurveMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts) The hover state for a single point marker. */ export interface PlotBellcurveMarkerStatesHoverOptions { /** * (Highcharts) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotBellcurveMarkerStatesHoverAnimationOptions); /** * (Highcharts) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highcharts) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotBellcurveMarkerStatesInactiveOptions { /** * (Highcharts) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotBellcurveMarkerStatesNormalOptions { /** * (Highcharts) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts) States for a single point marker. */ export interface PlotBellcurveMarkerStatesOptions { /** * (Highcharts) The hover state for a single point marker. */ hover?: PlotBellcurveMarkerStatesHoverOptions; inactive?: PlotBellcurveMarkerStatesInactiveOptions; /** * (Highcharts) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotBellcurveMarkerStatesNormalOptions; /** * (Highcharts) The appearance of the point marker when selected. In order * to allow a point to be selected, set the `series.allowPointSelect` option * to true. */ select?: PlotBellcurveMarkerStatesSelectOptions; } /** * (Highcharts) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotBellcurveMarkerStatesSelectOptions { /** * (Highcharts) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts) A bell curve is an areaspline series which represents the * probability density function of the normal distribution. It calculates mean * and standard deviation of the base series data and plots the curve according * to the calculated parameters. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `bellcurve` series are defined in plotOptions.bellcurve. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotBellcurveOptions { /** * (Highcharts) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotBellcurveAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highcharts) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotBellcurveAnimationOptions); /** * (Highcharts) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highcharts) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highcharts) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highcharts) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotBellcurveConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highcharts) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highcharts) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotBellcurveDataGroupingOptions; /** * (Highcharts) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotBellcurveDragDropOptions; /** * (Highcharts) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotBellcurveEventsOptions; /** * (Highcharts) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highcharts, Highstock) Fill color or gradient for the area. When `null`, * the series' `color` is used with the series' `fillOpacity`. * * In styled mode, the fill color can be set with the `.highcharts-area` * class name. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Fill opacity for the area. When you set an * explicit `fillColor`, the `fillOpacity` is not applied. Instead, you * should define the opacity in the `fillColor` with an rgba color * definition. The `fillOpacity` setting, also the default setting, * overrides the alpha component of the `color` setting. * * In styled mode, the fill opacity can be set with the `.highcharts-area` * class name. */ fillOpacity?: number; /** * (Highcharts) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highcharts) Export-data module required. When set to `false` will * prevent the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts) This option allows to define the length of the bell curve. A * unit of the length of the bell curve is standard deviation. */ intervals?: number; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts) An array specifying which option maps to which key in the * data point array. This makes it convenient to work with unstructured data * arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotBellcurveLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotBellcurveLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotBellcurveLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) A separate color for the graph line. By default * the line takes the `color` of the series, but the lineColor setting * allows setting a separate color for the line without altering the * `fillColor`. * * In styled mode, the line stroke can be set with the `.highcharts-graph` * class name. */ lineColor?: ColorString; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts) Options for the point markers of line-like series. * Properties like `fillColor`, `lineColor` and `lineWidth` define the * visual appearance of the markers. Other series types, like column series, * don't have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotBellcurveMarkerOptions; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts) The color for the parts of the graph or points that are * below the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) A separate color for the negative part of the area. * * In styled mode, a negative color is set with the `.highcharts-negative` * class name. */ negativeFillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highcharts) Properties for each single point. */ point?: PlotBellcurvePointOptions; /** * (Highcharts) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highstock, Gantt) Possible values: `"on"`, `"between"`, * `number`. * * In a column chart, when pointPlacement is `"on"`, the point will not * create any padding of the X axis. In a polar column chart this means that * the first column points directly north. If the pointPlacement is * `"between"`, the columns will be laid out between ticks. This is useful * for example for visualising an amount between two points in time or in a * certain sector of a polar chart. * * Since Highcharts 3.0.2, the point placement can also be numeric, where 0 * is on the axis value, -0.5 is between this value and the previous, and * 0.5 is between this value and the next. Unlike the textual options, * numeric point placement options won't affect axis padding. * * Note that pointPlacement needs a pointRange to work. For column series * this is computed, but for line-type series it needs to be set. * * For the `xrange` series type and gantt charts, if the Y axis is a * category axis, the `pointPlacement` applies to the Y axis rather than the * (typically datetime) X axis. * * Defaults to `undefined` in cartesian charts, `"between"` in polar charts. */ pointPlacement?: (number|string); /** * (Highstock) The width of each point on the x axis. For example in a * column chart with one value each day, the pointRange would be 1 day (= 24 * * 3600 * * * 1000 milliseconds). This is normally computed automatically, but this * option can be used to override the automatic value. */ pointRange?: number; /** * (Highcharts) Defines how many points should be plotted within 1 interval. * See `plotOptions.bellcurve.intervals`. */ pointsInInterval?: number; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, pointStart defines on what value to start. For example, if a * series contains one yearly value starting from 1945, set pointStart to * 1945. */ pointStart?: number; /** * (Highcharts) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highcharts) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highcharts) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts) If set to `true`, the accessibility module will skip past * the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotBellcurveStatesOptions; /** * (Highcharts) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The Y axis value to serve as the base for the * area, for distinguishing between values above and below a threshold. The * area between the graph and the threshold is filled. * * * If a number is given, the Y axis will scale to the threshold. * * * If `null`, the scaling behaves like a line series with fill between the * graph and the Y axis minimum. * * * If `Infinity` or `-Infinity`, the area between the graph and the * corresponing Y axis extreme is filled (since v6.1.0). */ threshold?: number; /** * (Highcharts) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotBellcurveTooltipOptions; /** * (Highcharts, Highstock) Whether the whole area or just the line should * respond to mouseover tooltips and other mouse or touch events. */ trackByArea?: boolean; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highcharts) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotBellcurveZonesOptions>; } /** * (Highcharts) Events for each single point. */ export interface PlotBellcurvePointEventsOptions { /** * (Highcharts) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts) Callback that fires when the point is dropped. The * parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts) Fires when the point is removed using the `.remove()` * method. One parameter, `event`, is passed to the function. Returning * `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts) Fires when the point is unselected either programmatically * or following a click on the point. One parameter, `event`, is passed to * the function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) Properties for each single point. */ export interface PlotBellcurvePointOptions { /** * (Highcharts) Events for each single point. */ events?: PlotBellcurvePointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotBellcurveStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotBellcurveStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotBellcurveStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotBellcurveStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotBellcurveStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotBellcurveStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotBellcurveStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotBellcurveStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotBellcurveStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotBellcurveStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotBellcurveStatesHoverMarkerStatesHoverOptions; inactive?: PlotBellcurveStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotBellcurveStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotBellcurveStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotBellcurveStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotBellcurveStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotBellcurveStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotBellcurveStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotBellcurveStatesHoverMarkerOptions; } export interface PlotBellcurveStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts) The opposite state of a hover for series. */ export interface PlotBellcurveStatesInactiveOptions { animation?: PlotBellcurveStatesInactiveAnimationOptions; /** * (Highcharts) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highcharts) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotBellcurveStatesNormalOptions { /** * (Highcharts) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotBellcurveStatesOptions { /** * (Highcharts) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotBellcurveStatesHoverOptions; /** * (Highcharts) The opposite state of a hover for series. */ inactive?: PlotBellcurveStatesInactiveOptions; /** * (Highcharts) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotBellcurveStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotBellcurveStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotBellcurveStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotBellcurveStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotBellcurveStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotBellcurveStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotBellcurveStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotBellcurveStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotBellcurveStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotBellcurveStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotBellcurveStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotBellcurveStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotBellcurveStatesSelectMarkerStatesHoverOptions; inactive?: PlotBellcurveStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotBellcurveStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotBellcurveStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotBellcurveStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotBellcurveStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotBellcurveStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotBellcurveStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotBellcurveStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotBellcurveTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotBellcurveTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotBellcurveTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highcharts) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts) The name of a symbol to use for the border around the * tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highcharts) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts) How many decimals to show in each series' y value. This is * overridable in each series' tooltip options object. The default is to * preserve all decimals. */ valueDecimals?: number; /** * (Highcharts) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotBellcurveZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts) Keyboard navigation for a series */ export interface PlotBoxplotAccessibilityKeyboardNavigationOptions { /** * (Highcharts) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highcharts) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotBoxplotAccessibilityOptions { /** * (Highcharts) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highcharts) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highcharts) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotBoxplotAccessibilityKeyboardNavigationOptions); /** * (Highcharts) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotBoxplotAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotBoxplotConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotBoxplotConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotBoxplotConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotBoxplotConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotBoxplotConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotBoxplotConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotBoxplotConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotBoxplotDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. Defaults to `10`. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts) Options for the drag handles. */ export interface PlotBoxplotDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface PlotBoxplotDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotBoxplotDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: PlotBoxplotDragDropGuideBoxDefaultOptions; } /** * (Highcharts) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotBoxplotDragDropOptions { /** * (Highcharts) Allow high value to be dragged individually. Requires * `draggable-points` module. */ draggableHigh?: boolean; /** * (Highcharts) Allow low value to be dragged individually. Requires * `draggable-points` module. */ draggableLow?: boolean; /** * (Highcharts) Allow Q1 value to be dragged individually. Requires * `draggable-points` module. */ draggableQ1?: boolean; /** * (Highcharts) Allow Q3 value to be dragged individually. Requires * `draggable-points` module. */ draggableQ3?: boolean; /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: PlotBoxplotDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotBoxplotDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotBoxplotEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotBoxplotLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotBoxplotLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotBoxplotLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotBoxplotLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotBoxplotLastVisiblePriceLabelOptions; } /** * (Highcharts) A box plot is a convenient way of depicting groups of data * through their five-number summaries: the smallest observation (sample * minimum), lower quartile (Q1), median (Q2), upper quartile (Q3), and largest * observation (sample maximum). * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `boxplot` series are defined in plotOptions.boxplot. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotBoxplotOptions { /** * (Highcharts) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotBoxplotAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highcharts) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotBoxplotAnimationOptions); /** * (Highcharts) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highcharts) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highcharts) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highcharts) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts, Highstock, Gantt) When using automatic point colors pulled * from the global colors or series-specific plotOptions.column.colors * collections, this option determines whether the chart should receive one * color per series or one color per point. * * In styled mode, the `colors` or `series.colors` arrays are not supported, * and instead this option gives the points individual color class names on * the form `highcharts-color-{n}`. */ colorByPoint?: boolean; /** * (Highcharts) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) A series specific or series type specific * color set to apply instead of the global colors when colorByPoint is * true. */ colors?: Array<(ColorString|GradientColorObject|PatternObject)>; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotBoxplotConnectorsOptions; /** * (Highcharts, Highstock, Gantt) When true, each column edge is rounded to * its nearest pixel in order to render sharp on screen. In some cases, when * there are a lot of densely packed columns, this leads to visible * difference in column widths or distance between columns. In these cases, * setting `crisp` to `false` may look better, even though each column is * rendered blurry. */ crisp?: boolean; /** * (Highcharts, Highstock, Gantt) When the series contains less points than * the crop threshold, all points are drawn, event if the points fall * outside the visible plot area at the current zoom. The advantage of * drawing all points (including markers and columns), is that animation is * performed on updates. On the other hand, when the series contains more * points than the crop threshold, the series data is cropped to only * contain points that fall within the plot area. The advantage of cropping * away invisible points is to increase performance on large series. */ cropThreshold?: number; /** * (Highcharts) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotBoxplotDataGroupingOptions; /** * (Highcharts) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) Depth of the columns in a 3D column chart. Requires * `highcharts-3d.js`. */ depth?: number; /** * (Highcharts) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotBoxplotDragDropOptions; /** * (Highcharts) 3D columns only. The color of the edges. Similar to * `borderColor`, except it defaults to the same color as the column. */ edgeColor?: ColorString; /** * (Highcharts) 3D columns only. The width of the colored edges. */ edgeWidth?: number; /** * (Highcharts) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotBoxplotEventsOptions; /** * (Highcharts) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highcharts) The fill color of the box. * * In styled mode, the fill color can be set with the * `.highcharts-boxplot-box` class. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highcharts, Highstock, Gantt) Whether to group non-stacked columns or to * let them render independent of each other. Non-grouped columns will be * laid out individually and overlap each other. */ grouping?: boolean; /** * (Highcharts, Highstock, Gantt) Padding between each value groups, in x * axis units. */ groupPadding?: number; /** * (Highcharts) Export-data module required. When set to `false` will * prevent the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts) An array specifying which option maps to which key in the * data point array. This makes it convenient to work with unstructured data * arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotBoxplotLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotBoxplotLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotBoxplotLastVisiblePriceOptions; /** * (Highcharts) The width of the line surrounding the box. If any of * stemWidth, medianWidth or whiskerWidth are `null`, the lineWidth also * applies to these lines. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts, Highstock, Gantt) The maximum allowed pixel width for a * column, translated to the height of a bar in a bar chart. This prevents * the columns from becoming too wide when there is a small number of points * in the chart. */ maxPointWidth?: number; /** * (Highcharts) The color of the median line. If `undefined`, the general * series color applies. * * In styled mode, the median stroke width can be set with the * `.highcharts-boxplot-median` class. */ medianColor?: (ColorString|GradientColorObject); /** * (Highcharts) The pixel width of the median line. If `null`, the lineWidth * is used. * * In styled mode, the median stroke width can be set with the * `.highcharts-boxplot-median` class. */ medianWidth?: number; /** * (Highcharts, Highstock, Gantt) The minimal height for a column or width * for a bar. By default, 0 values are not shown. To visualize a 0 (or close * to zero) point, set the minimal point length to a pixel value like 3\. In * stacked column charts, minPointLength might not be respected for tightly * packed values. */ minPointLength?: number; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts) The color for the parts of the graph or points that are * below the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highcharts) Properties for each single point. */ point?: PlotBoxplotPointOptions; /** * (Highcharts) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, `pointInterval` defines the interval of the x values. For * example, if a series contains one value every decade starting from year * 0, set `pointInterval` to `10`. In true `datetime` axes, the * `pointInterval` is set in milliseconds. * * It can be also be combined with `pointIntervalUnit` to draw irregular * time intervals. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointInterval?: number; /** * (Highcharts, Highstock, Gantt) On datetime series, this allows for * setting the pointInterval to irregular time units, `day`, `month` and * `year`. A day is usually the same as 24 hours, but `pointIntervalUnit` * also takes the DST crossover into consideration when dealing with local * time. Combine this option with `pointInterval` to draw weeks, quarters, 6 * months, 10 years etc. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointIntervalUnit?: OptionsPointIntervalUnitValue; /** * (Highcharts, Highstock, Gantt) Padding between each column or bar, in x * axis units. */ pointPadding?: number; /** * (Highcharts, Highstock, Gantt) Possible values: `"on"`, `"between"`, * `number`. * * In a column chart, when pointPlacement is `"on"`, the point will not * create any padding of the X axis. In a polar column chart this means that * the first column points directly north. If the pointPlacement is * `"between"`, the columns will be laid out between ticks. This is useful * for example for visualising an amount between two points in time or in a * certain sector of a polar chart. * * Since Highcharts 3.0.2, the point placement can also be numeric, where 0 * is on the axis value, -0.5 is between this value and the previous, and * 0.5 is between this value and the next. Unlike the textual options, * numeric point placement options won't affect axis padding. * * Note that pointPlacement needs a pointRange to work. For column series * this is computed, but for line-type series it needs to be set. * * For the `xrange` series type and gantt charts, if the Y axis is a * category axis, the `pointPlacement` applies to the Y axis rather than the * (typically datetime) X axis. * * Defaults to `undefined` in cartesian charts, `"between"` in polar charts. */ pointPlacement?: (number|string); /** * (Highcharts, Highstock, Gantt) The X axis range that each point is valid * for. This determines the width of the column. On a categorized axis, the * range will be 1 by default (one category unit). On linear and datetime * axes, the range will be computed as the distance between the two closest * data points. * * The default `null` means it is computed automatically, but this option * can be used to override the automatic value. */ pointRange?: (number|null); /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, pointStart defines on what value to start. For example, if a * series contains one yearly value starting from 1945, set pointStart to * 1945. */ pointStart?: number; /** * (Highcharts, Highstock, Gantt) A pixel value specifying a fixed width for * each column or bar. When `null`, the width is calculated from the * `pointPadding` and `groupPadding`. */ pointWidth?: number; /** * (Highcharts) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highcharts) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highcharts) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts) If set to `true`, the accessibility module will skip past * the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; /** * (Highcharts, Highstock) Whether to stack the values of each series on top * of each other. Possible values are `undefined` to disable, `"normal"` to * stack by value or `"percent"`. When stacking is enabled, data must be * sorted in ascending X order. A special stacking option is with the * streamgraph series type, where the stacking option is set to `"stream"`. * The second one is `"overlap"`, which only applies to waterfall series. */ stacking?: OptionsStackingValue; /** * (Highcharts) The dash style of the stem, the vertical line extending from * the box to the whiskers. */ stemDashStyle?: DashStyleValue; /** * (Highcharts) The width of the stem, the vertical line extending from the * box to the whiskers. If `undefined`, the width is inherited from the * lineWidth option. * * In styled mode, the stem stroke width can be set with the * `.highcharts-boxplot-stem` class. */ stemWidth?: number; /** * (Highcharts) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts) The Y axis value to serve as the base for the columns, for * distinguishing between values above and below a threshold. If `null`, the * columns extend from the padding Y axis minimum. */ threshold?: any; /** * (Highcharts) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotBoxplotTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highcharts) Set the initial visibility of the series. */ visible?: boolean; /** * (Highcharts) The color of the whiskers, the horizontal lines marking low * and high values. When `undefined`, the general series color is used. * * In styled mode, the whisker stroke can be set with the * `.highcharts-boxplot-whisker` class . */ whiskerColor?: ColorString; /** * (Highcharts) The length of the whiskers, the horizontal lines marking low * and high values. It can be a numerical pixel value, or a percentage value * of the box width. Set `0` to disable whiskers. */ whiskerLength?: (number|string); /** * (Highcharts) The line width of the whiskers, the horizontal lines marking * low and high values. When `undefined`, the general lineWidth applies. * * In styled mode, the whisker stroke width can be set with the * `.highcharts-boxplot-whisker` class. */ whiskerWidth?: number; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotBoxplotZonesOptions>; } /** * (Highcharts) Events for each single point. */ export interface PlotBoxplotPointEventsOptions { /** * (Highcharts) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts) Callback that fires when the point is dropped. The * parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts) Fires when the point is removed using the `.remove()` * method. One parameter, `event`, is passed to the function. Returning * `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts) Fires when the point is unselected either programmatically * or following a click on the point. One parameter, `event`, is passed to * the function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) Properties for each single point. */ export interface PlotBoxplotPointOptions { /** * (Highcharts) Events for each single point. */ events?: PlotBoxplotPointEventsOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotBoxplotTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotBoxplotTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotBoxplotTooltipDateTimeLabelFormatsOptions|Dictionary<string>); distance?: number; /** * (Highcharts) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts) The name of a symbol to use for the border around the * tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highcharts) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts) How many decimals to show in each series' y value. This is * overridable in each series' tooltip options object. The default is to * preserve all decimals. */ valueDecimals?: number; /** * (Highcharts) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotBoxplotZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts, Highstock) Keyboard navigation for a series */ export interface PlotBubbleAccessibilityKeyboardNavigationOptions { /** * (Highcharts, Highstock) Enable/disable keyboard navigation support for a * specific series. */ enabled?: boolean; } /** * (Highcharts, Highstock) Accessibility options for a series. Requires the * accessibility module. */ export interface PlotBubbleAccessibilityOptions { /** * (Highcharts, Highstock) Provide a description of the series, announced to * screen readers. */ description?: string; /** * (Highcharts, Highstock) Enable/disable accessibility functionality for a * specific series. */ enabled?: boolean; /** * (Highcharts, Highstock) Expose only the series element to screen readers, * not its points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts, Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotBubbleAccessibilityKeyboardNavigationOptions); /** * (Highcharts, Highstock) Formatter function to use instead of the default * for point descriptions. Same as * `accessibility.pointDescriptionFormatter`, but for a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts, Highstock) Enable or disable the initial animation when a series * is displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotBubbleAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotBubbleConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotBubbleConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotBubbleConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotBubbleConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotBubbleConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotBubbleConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotBubbleConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotBubbleDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts, Highstock) Options for the drag handles. */ export interface PlotBubbleDragDropDragHandleOptions { /** * (Highcharts, Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts, Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The mouse cursor to use for the drag handles. By * default this is intelligently switching between `ew-resize` and * `ns-resize` depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts, Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts, Highstock) Function to define the SVG path to use for the * drag handles. Takes the point as argument. Should return an SVG path in * array format. The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts, Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box default state. */ export interface PlotBubbleDragDropGuideBoxDefaultOptions { /** * (Highcharts, Highstock) CSS class name of the guide box in this state. * Defaults to `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts, Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Guide box cursor. */ cursor?: string; /** * (Highcharts, Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts, Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts, Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box. The guide box has * one state by default, the `default` state. */ export interface PlotBubbleDragDropGuideBoxOptions { /** * (Highcharts, Highstock) Style options for the guide box default state. */ default?: PlotBubbleDragDropGuideBoxDefaultOptions; } /** * (Highcharts, Highstock) The draggable-points module allows points to be moved * around or modified in the chart. In addition to the options mentioned under * the `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotBubbleDragDropOptions { /** * (Highcharts, Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts, Highstock) Enable dragging in the Y dimension. Note that * this is not supported for TreeGrid axes (the default axis type in Gantt * charts). */ draggableY?: boolean; /** * (Highcharts, Highstock) Options for the drag handles. */ dragHandle?: PlotBubbleDragDropDragHandleOptions; /** * (Highcharts, Highstock) Set the maximum X value the points can be moved * to. */ dragMaxX?: number; /** * (Highcharts, Highstock) Set the maximum Y value the points can be moved * to. */ dragMaxY?: number; /** * (Highcharts, Highstock) Set the minimum X value the points can be moved * to. */ dragMinX?: number; /** * (Highcharts, Highstock) Set the minimum Y value the points can be moved * to. */ dragMinY?: number; /** * (Highcharts, Highstock) The X precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionX?: number; /** * (Highcharts, Highstock) The Y precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionY?: number; /** * (Highcharts, Highstock) The amount of pixels to drag the pointer before * it counts as a drag operation. This prevents drag/drop to fire when just * clicking or selecting points. */ dragSensitivity?: number; /** * (Highcharts, Highstock) Group the points by a property. Points with the * same property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts, Highstock) Style options for the guide box. The guide box * has one state by default, the `default` state. */ guideBox?: (PlotBubbleDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts, Highstock) Update points as they are dragged. If false, a * guide box is drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock) General event handlers for the series items. These * event hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotBubbleEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts, Highstock) Fires when the checkbox next to the series' name * in the legend is clicked. One parameter, `event`, is passed to the * function. The state of the checkbox is found by `event.checked`. The * checked item is found by `event.item`. Return `false` to prevent the * default action which is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is clicked. One parameter, * `event`, is passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is hidden after chart * generation time, either by clicking the legend item or by calling * `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts, Highstock) Fires when the legend item belonging to the * series is clicked. One parameter, `event`, is passed to the function. The * default action is to toggle the visibility of the series. This can be * prevented by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse leaves the graph. One * parameter, `event`, is passed to the function, containing common event * information. If the stickyTracking option is true, `mouseOut` doesn't * happen before the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse enters the graph. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is shown after chart * generation time, either by clicking the legend item or by calling * `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock) Apply a jitter effect for the rendered markers. When * plotting discrete values, a little random noise may help telling the points * apart. The jitter setting applies a random displacement of up to `n` axis * units in either direction. So for example on a horizontal X axis, setting the * `jitter.x` to 0.24 will render the point in a random position between 0.24 * units to the left and 0.24 units to the right of the true axis position. On a * category axis, setting it to 0.5 will fill up the bin and make the data * appear continuous. * * When rendered on top of a box plot or a column series, a jitter value of 0.24 * will correspond to the underlying series' default groupPadding and * pointPadding settings. */ export interface PlotBubbleJitterOptions { /** * (Highcharts, Highstock) The maximal X offset for the random jitter * effect. */ x?: number; /** * (Highcharts, Highstock) The maximal Y offset for the random jitter * effect. */ y?: number; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotBubbleLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotBubbleLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotBubbleLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotBubbleLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotBubbleLastVisiblePriceLabelOptions; } /** * (Highcharts, Highstock) Options for the point markers of line-like series. * Properties like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't have * markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotBubbleMarkerOptions { /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The fill opacity of the bubble markers. */ fillOpacity?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: any; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotBubbleMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. * Possible values are "circle", "square", "diamond", "triangle" and * "triangle-down". * * Additionally, the URL to a graphic can be given on the form * `url(graphic.png)`. Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: (string|SymbolKeyValue); } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotBubbleMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotBubbleMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotBubbleMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotBubbleMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotBubbleMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotBubbleMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotBubbleMarkerStatesHoverOptions; inactive?: PlotBubbleMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotBubbleMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotBubbleMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotBubbleMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts, Highstock) A bubble series is a three dimensional series type * where each point renders an X, Y and Z value. Each points is drawn as a * bubble where the position along the X and Y axes mark the X and Y values, and * the size of the bubble relates to the Z value. Requires `highcharts-more.js`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `bubble` series are defined in plotOptions.bubble. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotBubbleOptions { /** * (Highcharts, Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotBubbleAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highcharts, Highstock) Allow this series' points to be selected by * clicking on the graphic (columns, point markers, pie slices, map areas * etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts, Highstock) Enable or disable the initial animation when a * series is displayed. The animation can also be set as a configuration * object. Please note that this option only applies to the initial * animation of the series itself. For other animations, see chart.animation * and the animation parameter under the API methods. The following * properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotBubbleAnimationOptions); /** * (Highcharts, Highstock) If there are more points in the series than the * `animationLimit`, the animation won't run. Animation affects overall * performance and doesn't work well with heavy data series. */ animationLimit?: number; /** * (Highcharts, Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts, Highstock) Set the point threshold for when a series should * enter boost mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highcharts, Highstock) An additional class name to apply to the series' * graphical elements. This option does not replace default class names of * the graphical element. */ className?: string; /** * (Highcharts, Highstock) Disable this option to allow series rendering in * the whole plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts, Highstock) The main color of the series. In line type series * it applies to the line and the point markers unless otherwise specified. * In bar type series it applies to the bars unless a color is specified per * point. The default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts, Highstock) Styled mode only. A specific color index to use * for the series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotBubbleConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highcharts, Highstock) You can set the cursor to "pointer" if you have * click events attached to the series, to signal to the user that the * points and lines can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highcharts, Highstock) A name for the dash style to use for the graph, * or for some series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotBubbleDataGroupingOptions; /** * (Highcharts, Highstock) Options for the series data labels, appearing * next to each data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts, Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts, Highstock) Whether to display negative sized bubbles. The * threshold is given by the zThreshold option, and negative bubbles can be * visualized by setting negativeColor. */ displayNegative?: boolean; /** * (Highcharts, Highstock) The draggable-points module allows points to be * moved around or modified in the chart. In addition to the options * mentioned under the `dragDrop` API structure, the module fires three * events, point.dragStart, point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotBubbleDragDropOptions; /** * (Highcharts, Highstock) Enable or disable the mouse tracking for a * specific series. This includes point tooltips and click events on graphs * and points. For large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts, Highstock) General event handlers for the series items. * These event hooks can also be attached to the series at run time using * the `Highcharts.addEvent` function. */ events?: PlotBubbleEventsOptions; /** * (Highcharts, Highstock) By default, series are exposed to screen readers * as regions. By enabling this option, the series element itself will be * exposed in the same way as the data points. This is useful if the series * is not used as a grouping entity in the chart, but you still want to * attach a description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highcharts, Highstock) Determines whether the series should look for the * nearest point in both dimensions or just the x-dimension when hovering * the series. Defaults to `'xy'` for scatter series and `'x'` for most * other series. If the data has duplicate x-values, it is recommended to * set this to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highcharts, Highstock) Export-data module required. When set to `false` * will prevent the series data from being included in any form of data * export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock) Apply a jitter effect for the rendered markers. * When plotting discrete values, a little random noise may help telling the * points apart. The jitter setting applies a random displacement of up to * `n` axis units in either direction. So for example on a horizontal X * axis, setting the `jitter.x` to 0.24 will render the point in a random * position between 0.24 units to the left and 0.24 units to the right of * the true axis position. On a category axis, setting it to 0.5 will fill * up the bin and make the data appear continuous. * * When rendered on top of a box plot or a column series, a jitter value of * 0.24 will correspond to the underlying series' default groupPadding and * pointPadding settings. */ jitter?: PlotBubbleJitterOptions; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts, Highstock) An array specifying which option maps to which * key in the data point array. This makes it convenient to work with * unstructured data arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotBubbleLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotBubbleLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotBubbleLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) The width of the line connecting the data points. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts, Highstock) Options for the point markers of line-like * series. Properties like `fillColor`, `lineColor` and `lineWidth` define * the visual appearance of the markers. Other series types, like column * series, don't have markers, but have visual options on the series level * instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotBubbleMarkerOptions; /** * (Highcharts, Highstock) Maximum bubble size. Bubbles will automatically * size between the `minSize` and `maxSize` to reflect the `z` value of each * bubble. Can be either pixels (when no unit is given), or a percentage of * the smallest one of the plot width and height. */ maxSize?: (number|string); /** * (Highcharts, Highstock) Minimum bubble size. Bubbles will automatically * size between the `minSize` and `maxSize` to reflect the `z` value of each * bubble. Can be either pixels (when no unit is given), or a percentage of * the smallest one of the plot width and height. */ minSize?: (number|string); /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts) When a point's Z value is below the zThreshold setting, this * color is used. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Opacity of a series parts: line, fill (e.g. area) * and dataLabels. */ opacity?: number; /** * (Highcharts, Highstock) Properties for each single point. */ point?: PlotBubblePointOptions; /** * (Highcharts, Highstock) Same as accessibility.pointDescriptionFormatter, * but for an individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, `pointInterval` defines the interval of the x values. For * example, if a series contains one value every decade starting from year * 0, set `pointInterval` to `10`. In true `datetime` axes, the * `pointInterval` is set in milliseconds. * * It can be also be combined with `pointIntervalUnit` to draw irregular * time intervals. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointInterval?: number; /** * (Highcharts, Highstock, Gantt) On datetime series, this allows for * setting the pointInterval to irregular time units, `day`, `month` and * `year`. A day is usually the same as 24 hours, but `pointIntervalUnit` * also takes the DST crossover into consideration when dealing with local * time. Combine this option with `pointInterval` to draw weeks, quarters, 6 * months, 10 years etc. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointIntervalUnit?: OptionsPointIntervalUnitValue; /** * (Highstock) The width of each point on the x axis. For example in a * column chart with one value each day, the pointRange would be 1 day (= 24 * * 3600 * * * 1000 milliseconds). This is normally computed automatically, but this * option can be used to override the automatic value. */ pointRange?: number; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, pointStart defines on what value to start. For example, if a * series contains one yearly value starting from 1945, set pointStart to * 1945. */ pointStart?: number; /** * (Highcharts, Highstock) Whether to select the series initially. If * `showCheckbox` is true, the checkbox next to the series name in the * legend will be checked for a selected series. */ selected?: boolean; /** * (Highcharts, Highstock) If true, a checkbox is displayed next to the * legend item to allow selecting the series. The state of the checkbox is * determined by the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts, Highstock) Whether to display this particular series or * series type in the legend. The default value is `true` for standalone * series, `false` for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts, Highstock) Whether the bubble's value should be represented * by the area or the width of the bubble. The default, `area`, corresponds * best to the human perception of the size of each bubble. */ sizeBy?: BubbleSizeByValue; /** * (Highcharts) When this is true, the absolute value of z determines the * size of the bubble. This means that with the default `zThreshold` of 0, a * bubble of value -1 will have the same size as a bubble of value 1, while * a bubble of value 0 will have a smaller size according to `minSize`. */ sizeByAbsoluteValue?: boolean; /** * (Highcharts, Highstock) If set to `true`, the accessibility module will * skip past the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts) When this is true, the series will not cause the Y axis to * cross the zero plane (or threshold option) unless the data actually * crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; /** * (Highcharts, Highstock) Whether to stack the values of each series on top * of each other. Possible values are `undefined` to disable, `"normal"` to * stack by value or `"percent"`. When stacking is enabled, data must be * sorted in ascending X order. A special stacking option is with the * streamgraph series type, where the stacking option is set to `"stream"`. * The second one is `"overlap"`, which only applies to waterfall series. */ stacking?: OptionsStackingValue; states?: PlotBubbleStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highcharts, Highstock) Sticky tracking of mouse events. When true, the * `mouseOut` event on a series isn't triggered until the mouse moves over * another series, or out of the plot area. When false, the `mouseOut` event * on a series is triggered when the mouse leaves the area around the * series' graph or markers. This also implies the tooltip. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highcharts, Highstock) A configuration object for the tooltip rendering * of each single series. Properties are inherited from tooltip. Overridable * properties are `headerFormat`, `pointFormat`, `yDecimals`, `xDateFormat`, * `yPrefix` and `ySuffix`. Unlike other series, in a scatter plot the * series.name by default shows in the headerFormat and point.x and point.y * in the pointFormat. */ tooltip?: PlotBubbleTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highcharts, Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts) The minimum for the Z value range. Defaults to the highest Z * value in the data. */ zMax?: number; /** * (Highcharts) The minimum for the Z value range. Defaults to the lowest Z * value in the data. */ zMin?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotBubbleZonesOptions>; /** * (Highcharts) When displayNegative is `false`, bubbles with lower Z values * are skipped. When `displayNegative` is `true` and a negativeColor is * given, points with lower Z is colored. */ zThreshold?: number; } /** * (Highcharts, Highstock) Events for each single point. */ export interface PlotBubblePointEventsOptions { /** * (Highcharts, Highstock) Fires when a point is clicked. One parameter, * `event`, is passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock) Callback that fires while dragging a point. The * mouse event is passed in as parameter. The original data can be accessed * from `e.origin`, and the new point values can be accessed from * `e.newPoints`. If there is only a single point being updated, it can be * accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock) Callback that fires when starting to drag a * point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock) Callback that fires when the point is dropped. * The parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse leaves the area close to the * point. One parameter, `event`, is passed to the function, containing * common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse enters the area close to the * point. One parameter, `event`, is passed to the function, containing * common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is updated programmatically * through the `.update()` method. One parameter, `event`, is passed to the * function. The new point options can be accessed through `event.options`. * Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts, Highstock) Properties for each single point. */ export interface PlotBubblePointOptions { /** * (Highcharts, Highstock) Events for each single point. */ events?: PlotBubblePointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotBubbleStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotBubbleStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotBubbleStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotBubbleStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotBubbleStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotBubbleStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotBubbleStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotBubbleStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotBubbleStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotBubbleStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotBubbleStatesHoverMarkerStatesHoverOptions; inactive?: PlotBubbleStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotBubbleStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotBubbleStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotBubbleStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts, Highstock) Options for the hovered series. These settings * override the normal state options when a series is moused over or touched. */ export interface PlotBubbleStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotBubbleStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Enable separate styles for the hovered series to * visualize that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: PlotBubbleStatesHoverHaloOptions; /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotBubbleStatesHoverMarkerOptions; } export interface PlotBubbleStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The opposite state of a hover for series. */ export interface PlotBubbleStatesInactiveOptions { animation?: PlotBubbleStatesInactiveAnimationOptions; /** * (Highcharts, Highstock) Opacity of series elements (dataLabels, line, * area). */ opacity?: number; } /** * (Highcharts, Highstock) The normal state of a series, or for point items in * column, pie and similar series. Currently only used for setting animation * when returning to normal state from hover. */ export interface PlotBubbleStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotBubbleStatesOptions { /** * (Highcharts, Highstock) Options for the hovered series. These settings * override the normal state options when a series is moused over or * touched. */ hover?: PlotBubbleStatesHoverOptions; /** * (Highcharts, Highstock) The opposite state of a hover for series. */ inactive?: PlotBubbleStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a series, or for point items * in column, pie and similar series. Currently only used for setting * animation when returning to normal state from hover. */ normal?: PlotBubbleStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotBubbleStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotBubbleStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotBubbleStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotBubbleStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotBubbleStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotBubbleStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotBubbleStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotBubbleStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotBubbleStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotBubbleStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotBubbleStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotBubbleStatesSelectMarkerStatesHoverOptions; inactive?: PlotBubbleStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotBubbleStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotBubbleStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotBubbleStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotBubbleStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotBubbleStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotBubbleStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotBubbleStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotBubbleTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts, Highstock) A configuration object for the tooltip rendering of * each single series. Properties are inherited from tooltip. Overridable * properties are `headerFormat`, `pointFormat`, `yDecimals`, `xDateFormat`, * `yPrefix` and `ySuffix`. Unlike other series, in a scatter plot the * series.name by default shows in the headerFormat and point.x and point.y in * the pointFormat. */ export interface PlotBubbleTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotBubbleTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highcharts, Highstock) Whether the tooltip should follow the mouse as it * moves across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts, Highstock) Whether the tooltip should update as the finger * moves on a touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts, Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts, Highstock) The HTML of the tooltip header line. Variables * are enclosed by curly brackets. Available variables are `point.key`, * `series.name`, `series.color` and other members from the `point` and * `series` objects. The `point.key` variable contains the category name, x * value or datetime string depending on the type of axis. For datetime * axes, the `point.key` date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts, Highstock) The name of a symbol to use for the border around * the tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts, Highstock) The number of milliseconds to wait until the * tooltip is hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts, Highstock) The HTML of the null point's line in the tooltip. * Works analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts, Highstock) Callback function to format the text of the * tooltip for visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts, Highstock) Whether to allow the tooltip to render outside * the chart's SVG element box. By default (`false`), the tooltip is * rendered within the chart's SVG element, which results in the tooltip * being aligned inside the chart area. For small charts, this may result in * clipping or overlapping. When `true`, a separate SVG element is created * and overlaid on the page, allowing the tooltip to be aligned inside the * page itself. */ outside?: boolean; /** * (Highcharts, Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts, Highstock) The HTML of the point's line in the tooltip. * Variables are enclosed by curly brackets. Available variables are * point.x, point.y, series. name and series.color and other properties on * the same form. Furthermore, `point.y` can be extended by the * `tooltip.valuePrefix` and `tooltip.valueSuffix` variables. This can also * be overridden for each series, which makes it a good hook for displaying * units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts, Highstock) A callback function for formatting the HTML * output for a single point in the tooltip. Like the `pointFormat` string, * but with more flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts, Highstock) How many decimals to show in each series' y * value. This is overridable in each series' tooltip options object. The * default is to preserve all decimals. */ valueDecimals?: number; /** * (Highcharts, Highstock) A string to prepend to each series' y value. * Overridable in each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts, Highstock) A string to append to each series' y value. * Overridable in each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotBubbleZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts) Keyboard navigation for a series */ export interface PlotBulletAccessibilityKeyboardNavigationOptions { /** * (Highcharts) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highcharts) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotBulletAccessibilityOptions { /** * (Highcharts) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highcharts) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highcharts) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotBulletAccessibilityKeyboardNavigationOptions); /** * (Highcharts) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotBulletAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotBulletConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotBulletConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotBulletConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotBulletConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotBulletConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotBulletConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotBulletConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotBulletDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. Defaults to `10`. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts) Options for the drag handles. */ export interface PlotBulletDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface PlotBulletDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotBulletDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: PlotBulletDragDropGuideBoxDefaultOptions; } /** * (Highcharts) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotBulletDragDropOptions { /** * (Highcharts) Allow target value to be dragged individually. Requires * `draggable-points` module. */ draggableTarget?: boolean; /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: PlotBulletDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotBulletDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotBulletEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotBulletLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotBulletLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotBulletLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotBulletLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotBulletLastVisiblePriceLabelOptions; } /** * (Highcharts) A bullet graph is a variation of a bar graph. The bullet graph * features a single measure, compares it to a target, and displays it in the * context of qualitative ranges of performance that could be set using * plotBands on yAxis. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `bullet` series are defined in plotOptions.bullet. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotBulletOptions { /** * (Highcharts) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotBulletAccessibilityOptions); /** * (Highcharts) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotBulletAnimationOptions); /** * (Highcharts) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highcharts) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts, Highstock, Gantt) The color of the border surrounding each * column or bar. * * In styled mode, the border stroke can be set with the `.highcharts-point` * rule. */ borderColor?: ColorString; /** * (Highcharts, Highstock, Gantt) The corner radius of the border * surrounding each column or bar. */ borderRadius?: number; /** * (Highcharts, Highstock, Gantt) The width of the border surrounding each * column or bar. Defaults to `1` when there is room for a border, but to * `0` when the columns are so dense that a border would cover the next * column. * * In styled mode, the stroke width can be set with the `.highcharts-point` * rule. */ borderWidth?: number; /** * (Highcharts) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highcharts) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) When using automatic point colors pulled * from the global colors or series-specific plotOptions.column.colors * collections, this option determines whether the chart should receive one * color per series or one color per point. * * In styled mode, the `colors` or `series.colors` arrays are not supported, * and instead this option gives the points individual color class names on * the form `highcharts-color-{n}`. */ colorByPoint?: boolean; /** * (Highcharts) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) A series specific or series type specific * color set to apply instead of the global colors when colorByPoint is * true. */ colors?: Array<(ColorString|GradientColorObject|PatternObject)>; /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotBulletConnectorsOptions; /** * (Highcharts, Highstock, Gantt) When true, each column edge is rounded to * its nearest pixel in order to render sharp on screen. In some cases, when * there are a lot of densely packed columns, this leads to visible * difference in column widths or distance between columns. In these cases, * setting `crisp` to `false` may look better, even though each column is * rendered blurry. */ crisp?: boolean; /** * (Highcharts, Highstock, Gantt) When the series contains less points than * the crop threshold, all points are drawn, event if the points fall * outside the visible plot area at the current zoom. The advantage of * drawing all points (including markers and columns), is that animation is * performed on updates. On the other hand, when the series contains more * points than the crop threshold, the series data is cropped to only * contain points that fall within the plot area. The advantage of cropping * away invisible points is to increase performance on large series. */ cropThreshold?: number; /** * (Highcharts) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotBulletDataGroupingOptions; /** * (Highcharts) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) Depth of the columns in a 3D column chart. Requires * `highcharts-3d.js`. */ depth?: number; /** * (Highcharts) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotBulletDragDropOptions; /** * (Highcharts) 3D columns only. The color of the edges. Similar to * `borderColor`, except it defaults to the same color as the column. */ edgeColor?: ColorString; /** * (Highcharts) 3D columns only. The width of the colored edges. */ edgeWidth?: number; /** * (Highcharts) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotBulletEventsOptions; /** * (Highcharts) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highcharts) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highcharts, Highstock, Gantt) Whether to group non-stacked columns or to * let them render independent of each other. Non-grouped columns will be * laid out individually and overlap each other. */ grouping?: boolean; /** * (Highcharts, Highstock, Gantt) Padding between each value groups, in x * axis units. */ groupPadding?: number; /** * (Highcharts) The spacing between columns on the Z Axis in a 3D chart. * Requires `highcharts-3d.js`. */ groupZPadding?: number; /** * (Highcharts) Export-data module required. When set to `false` will * prevent the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts) An array specifying which option maps to which key in the * data point array. This makes it convenient to work with unstructured data * arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotBulletLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotBulletLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotBulletLastVisiblePriceOptions; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts, Highstock, Gantt) The maximum allowed pixel width for a * column, translated to the height of a bar in a bar chart. This prevents * the columns from becoming too wide when there is a small number of points * in the chart. */ maxPointWidth?: number; /** * (Highcharts, Highstock, Gantt) The minimal height for a column or width * for a bar. By default, 0 values are not shown. To visualize a 0 (or close * to zero) point, set the minimal point length to a pixel value like 3\. In * stacked column charts, minPointLength might not be respected for tightly * packed values. */ minPointLength?: number; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts) The color for the parts of the graph or points that are * below the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highcharts) Properties for each single point. */ point?: PlotBulletPointOptions; /** * (Highcharts) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, `pointInterval` defines the interval of the x values. For * example, if a series contains one value every decade starting from year * 0, set `pointInterval` to `10`. In true `datetime` axes, the * `pointInterval` is set in milliseconds. * * It can be also be combined with `pointIntervalUnit` to draw irregular * time intervals. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointInterval?: number; /** * (Highcharts, Highstock, Gantt) On datetime series, this allows for * setting the pointInterval to irregular time units, `day`, `month` and * `year`. A day is usually the same as 24 hours, but `pointIntervalUnit` * also takes the DST crossover into consideration when dealing with local * time. Combine this option with `pointInterval` to draw weeks, quarters, 6 * months, 10 years etc. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointIntervalUnit?: OptionsPointIntervalUnitValue; /** * (Highcharts, Highstock, Gantt) Padding between each column or bar, in x * axis units. */ pointPadding?: number; /** * (Highcharts, Highstock, Gantt) Possible values: `"on"`, `"between"`, * `number`. * * In a column chart, when pointPlacement is `"on"`, the point will not * create any padding of the X axis. In a polar column chart this means that * the first column points directly north. If the pointPlacement is * `"between"`, the columns will be laid out between ticks. This is useful * for example for visualising an amount between two points in time or in a * certain sector of a polar chart. * * Since Highcharts 3.0.2, the point placement can also be numeric, where 0 * is on the axis value, -0.5 is between this value and the previous, and * 0.5 is between this value and the next. Unlike the textual options, * numeric point placement options won't affect axis padding. * * Note that pointPlacement needs a pointRange to work. For column series * this is computed, but for line-type series it needs to be set. * * For the `xrange` series type and gantt charts, if the Y axis is a * category axis, the `pointPlacement` applies to the Y axis rather than the * (typically datetime) X axis. * * Defaults to `undefined` in cartesian charts, `"between"` in polar charts. */ pointPlacement?: (number|string); /** * (Highcharts, Highstock, Gantt) The X axis range that each point is valid * for. This determines the width of the column. On a categorized axis, the * range will be 1 by default (one category unit). On linear and datetime * axes, the range will be computed as the distance between the two closest * data points. * * The default `null` means it is computed automatically, but this option * can be used to override the automatic value. */ pointRange?: (number|null); /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, pointStart defines on what value to start. For example, if a * series contains one yearly value starting from 1945, set pointStart to * 1945. */ pointStart?: number; /** * (Highcharts, Highstock, Gantt) A pixel value specifying a fixed width for * each column or bar. When `null`, the width is calculated from the * `pointPadding` and `groupPadding`. */ pointWidth?: number; /** * (Highcharts) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highcharts) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highcharts) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts) If set to `true`, the accessibility module will skip past * the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; /** * (Highcharts, Highstock) Whether to stack the values of each series on top * of each other. Possible values are `undefined` to disable, `"normal"` to * stack by value or `"percent"`. When stacking is enabled, data must be * sorted in ascending X order. A special stacking option is with the * streamgraph series type, where the stacking option is set to `"stream"`. * The second one is `"overlap"`, which only applies to waterfall series. */ stacking?: OptionsStackingValue; states?: PlotBulletStatesOptions; /** * (Highcharts) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts) All options related with look and positiong of targets. */ targetOptions?: PlotBulletTargetOptions; /** * (Highcharts) The Y axis value to serve as the base for the columns, for * distinguishing between values above and below a threshold. If `null`, the * columns extend from the padding Y axis minimum. */ threshold?: number; /** * (Highcharts) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotBulletTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highcharts) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotBulletZonesOptions>; } /** * (Highcharts) Events for each single point. */ export interface PlotBulletPointEventsOptions { /** * (Highcharts) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts) Callback that fires when the point is dropped. The * parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts) Fires when the point is removed using the `.remove()` * method. One parameter, `event`, is passed to the function. Returning * `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts) Fires when the point is unselected either programmatically * or following a click on the point. One parameter, `event`, is passed to * the function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) Properties for each single point. */ export interface PlotBulletPointOptions { /** * (Highcharts) Events for each single point. */ events?: PlotBulletPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotBulletStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock, Gantt) Options for the hovered point. These settings * override the normal state options when a point is moused over or touched. */ export interface PlotBulletStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotBulletStatesHoverAnimationOptions); /** * (Highcharts, Gantt) A specific border color for the hovered point. * Defaults to inherit the normal state border color. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) How much to brighten the point on * interaction. Requires the main color to be defined in hex or rgb(a) * format. * * In styled mode, the hover brightening is by default replaced with a * fill-opacity set in the `.highcharts-point:hover` rule. */ brightness?: number; /** * (Highcharts, Gantt) A specific color for the hovered point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) Enable separate styles for the hovered * series to visualize that the user hovers either the series itself or the * legend. */ enabled?: boolean; } export interface PlotBulletStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts) The opposite state of a hover for series. */ export interface PlotBulletStatesInactiveOptions { animation?: PlotBulletStatesInactiveAnimationOptions; /** * (Highcharts) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highcharts) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotBulletStatesNormalOptions { /** * (Highcharts) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotBulletStatesOptions { /** * (Highcharts, Highstock, Gantt) Options for the hovered point. These * settings override the normal state options when a point is moused over or * touched. */ hover?: PlotBulletStatesHoverOptions; /** * (Highcharts) The opposite state of a hover for series. */ inactive?: PlotBulletStatesInactiveOptions; /** * (Highcharts) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotBulletStatesNormalOptions; /** * (Highcharts, Highstock, Gantt) Options for the selected point. These * settings override the normal state options when a point is selected. */ select?: PlotBulletStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotBulletStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock, Gantt) Options for the selected point. These settings * override the normal state options when a point is selected. */ export interface PlotBulletStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotBulletStatesSelectAnimationOptions; /** * (Highcharts, Highstock, Gantt) A specific border color for the selected * point. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) A specific color for the selected point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) Enable separate styles for the hovered * series to visualize that the user hovers either the series itself or the * legend. */ enabled?: boolean; } /** * (Highcharts) All options related with look and positiong of targets. */ export interface PlotBulletTargetOptions { /** * (Highcharts) The border color of the rectangle representing the target. * When not set, the point's border color is used. * * In styled mode, use class `highcharts-bullet-target` instead. */ borderColor?: ColorString; /** * (Highcharts) The border width of the rectangle representing the target. * * In styled mode, use class `highcharts-bullet-target` instead. */ borderWidth?: number; /** * (Highcharts) The color of the rectangle representing the target. When not * set, point's color (if set in point's options - `color`) or zone of the * target value (if `zones` or `negativeColor` are set) or the same color as * the point has is used. * * In styled mode, use class `highcharts-bullet-target` instead. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The height of the rectangle representing the target. */ height?: number; /** * (Highcharts) The width of the rectangle representing the target. Could be * set as a pixel value or as a percentage of a column width. */ width?: (number|string); } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotBulletTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotBulletTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotBulletTooltipDateTimeLabelFormatsOptions|Dictionary<string>); distance?: number; /** * (Highcharts) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts) The name of a symbol to use for the border around the * tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highcharts) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts) How many decimals to show in each series' y value. This is * overridable in each series' tooltip options object. The default is to * preserve all decimals. */ valueDecimals?: number; /** * (Highcharts) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotBulletZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotCandlestickAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotCandlestickAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotCandlestickAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotCandlestickAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotCandlestickConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotCandlestickConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotCandlestickConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotCandlestickConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotCandlestickConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotCandlestickConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotCandlestickConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotCandlestickDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. Defaults to `5`. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotCandlestickDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotCandlestickDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotCandlestickDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotCandlestickDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotCandlestickDragDropOptions { /** * (Highstock) Allow close value to be dragged individually. Requires * `draggable-points` module. */ draggableClose?: boolean; /** * (Highstock) Allow high value to be dragged individually. Requires * `draggable-points` module. */ draggableHigh?: boolean; /** * (Highstock) Allow low value to be dragged individually. Requires * `draggable-points` module. */ draggableLow?: boolean; /** * (Highstock) Allow open value to be dragged individually. Requires * `draggable-points` module. */ draggableOpen?: boolean; /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotCandlestickDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotCandlestickDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotCandlestickEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotCandlestickLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotCandlestickLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotCandlestickLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotCandlestickLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotCandlestickLastVisiblePriceLabelOptions; } /** * (Highstock) A candlestick chart is a style of financial chart used to * describe price movements over time. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `candlestick` series are defined in * plotOptions.candlestick. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotCandlestickOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotCandlestickAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotCandlestickAnimationOptions); /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts, Highstock, Gantt) When using automatic point colors pulled * from the global colors or series-specific plotOptions.column.colors * collections, this option determines whether the chart should receive one * color per series or one color per point. * * In styled mode, the `colors` or `series.colors` arrays are not supported, * and instead this option gives the points individual color class names on * the form `highcharts-color-{n}`. */ colorByPoint?: boolean; /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) A series specific or series type specific * color set to apply instead of the global colors when colorByPoint is * true. */ colors?: Array<(ColorString|GradientColorObject|PatternObject)>; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotCandlestickConnectorsOptions; /** * (Highcharts, Highstock, Gantt) When the series contains less points than * the crop threshold, all points are drawn, event if the points fall * outside the visible plot area at the current zoom. The advantage of * drawing all points (including markers and columns), is that animation is * performed on updates. On the other hand, when the series contains more * points than the crop threshold, the series data is cropped to only * contain points that fall within the plot area. The advantage of cropping * away invisible points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotCandlestickDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) Depth of the columns in a 3D column chart. Requires * `highcharts-3d.js`. */ depth?: number; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotCandlestickDragDropOptions; /** * (Highcharts) 3D columns only. The color of the edges. Similar to * `borderColor`, except it defaults to the same color as the column. */ edgeColor?: ColorString; /** * (Highcharts) 3D columns only. The width of the colored edges. */ edgeWidth?: number; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotCandlestickEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highcharts, Highstock, Gantt) Whether to group non-stacked columns or to * let them render independent of each other. Non-grouped columns will be * laid out individually and overlap each other. */ grouping?: boolean; /** * (Highcharts, Highstock, Gantt) Padding between each value groups, in x * axis units. */ groupPadding?: number; /** * (Highcharts) The spacing between columns on the Z Axis in a 3D chart. * Requires `highcharts-3d.js`. */ groupZPadding?: number; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highstock) An array specifying which option maps to which key in the * data point array. This makes it convenient to work with unstructured data * arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotCandlestickLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotCandlestickLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotCandlestickLastVisiblePriceOptions; /** * (Highstock) The color of the line/border of the candlestick. * * In styled mode, the line stroke can be set with the * `.highcharts-candlestick-series .highcahrts-point` rule. */ lineColor?: ColorString; /** * (Highstock) The pixel width of the candlestick line/border. Defaults to * `1`. * * In styled mode, the line stroke width can be set with the * `.highcharts-candlestick-series .highcahrts-point` rule. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts, Highstock, Gantt) The maximum allowed pixel width for a * column, translated to the height of a bar in a bar chart. This prevents * the columns from becoming too wide when there is a small number of points * in the chart. */ maxPointWidth?: number; /** * (Highcharts, Highstock, Gantt) The minimal height for a column or width * for a bar. By default, 0 values are not shown. To visualize a 0 (or close * to zero) point, set the minimal point length to a pixel value like 3\. In * stacked column charts, minPointLength might not be respected for tightly * packed values. */ minPointLength?: number; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Properties for each single point. */ point?: PlotCandlestickPointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, `pointInterval` defines the interval of the x values. For * example, if a series contains one value every decade starting from year * 0, set `pointInterval` to `10`. In true `datetime` axes, the * `pointInterval` is set in milliseconds. * * It can be also be combined with `pointIntervalUnit` to draw irregular * time intervals. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointInterval?: number; /** * (Highcharts, Highstock, Gantt) On datetime series, this allows for * setting the pointInterval to irregular time units, `day`, `month` and * `year`. A day is usually the same as 24 hours, but `pointIntervalUnit` * also takes the DST crossover into consideration when dealing with local * time. Combine this option with `pointInterval` to draw weeks, quarters, 6 * months, 10 years etc. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointIntervalUnit?: OptionsPointIntervalUnitValue; /** * (Highcharts, Highstock, Gantt) Padding between each column or bar, in x * axis units. */ pointPadding?: number; /** * (Highcharts, Highstock, Gantt) Possible values: `"on"`, `"between"`, * `number`. * * In a column chart, when pointPlacement is `"on"`, the point will not * create any padding of the X axis. In a polar column chart this means that * the first column points directly north. If the pointPlacement is * `"between"`, the columns will be laid out between ticks. This is useful * for example for visualising an amount between two points in time or in a * certain sector of a polar chart. * * Since Highcharts 3.0.2, the point placement can also be numeric, where 0 * is on the axis value, -0.5 is between this value and the previous, and * 0.5 is between this value and the next. Unlike the textual options, * numeric point placement options won't affect axis padding. * * Note that pointPlacement needs a pointRange to work. For column series * this is computed, but for line-type series it needs to be set. * * For the `xrange` series type and gantt charts, if the Y axis is a * category axis, the `pointPlacement` applies to the Y axis rather than the * (typically datetime) X axis. * * Defaults to `undefined` in cartesian charts, `"between"` in polar charts. */ pointPlacement?: (number|string); /** * (Highcharts, Highstock, Gantt) The X axis range that each point is valid * for. This determines the width of the column. On a categorized axis, the * range will be 1 by default (one category unit). On linear and datetime * axes, the range will be computed as the distance between the two closest * data points. * * The default `null` means it is computed automatically, but this option * can be used to override the automatic value. */ pointRange?: (number|null); /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, pointStart defines on what value to start. For example, if a * series contains one yearly value starting from 1945, set pointStart to * 1945. */ pointStart?: number; /** * (Highstock) Determines which one of `open`, `high`, `low`, `close` values * should be represented as `point.y`, which is later used to set dataLabel * position and compare. */ pointValKey?: OptionsPointValKeyValue; /** * (Highcharts, Highstock, Gantt) A pixel value specifying a fixed width for * each column or bar. When `null`, the width is calculated from the * `pointPadding` and `groupPadding`. */ pointWidth?: number; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotCandlestickStatesOptions; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highstock) The Y axis value to serve as the base for the columns, for * distinguishing between values above and below a threshold. If `null`, the * columns extend from the padding Y axis minimum. */ threshold?: (number|null); /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotCandlestickTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) The fill color of the candlestick when values are rising. * * In styled mode, the up color can be set with the * `.highcharts-candlestick-series .highcharts-point-up` rule. */ upColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The specific line color for up candle sticks. The default is * to inherit the general `lineColor` setting. */ upLineColor?: ColorString; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotCandlestickZonesOptions>; } /** * (Highstock) Events for each single point. */ export interface PlotCandlestickPointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotCandlestickPointOptions { /** * (Highstock) Events for each single point. */ events?: PlotCandlestickPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotCandlestickStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highstock) Options for the hovered point. These settings override the normal * state options when a point is moused over or touched. */ export interface PlotCandlestickStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotCandlestickStatesHoverAnimationOptions); /** * (Highcharts, Gantt) A specific border color for the hovered point. * Defaults to inherit the normal state border color. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) How much to brighten the point on * interaction. Requires the main color to be defined in hex or rgb(a) * format. * * In styled mode, the hover brightening is by default replaced with a * fill-opacity set in the `.highcharts-point:hover` rule. */ brightness?: number; /** * (Highcharts, Gantt) A specific color for the hovered point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highstock) The pixel width of the line/border around the candlestick. */ lineWidth?: number; } export interface PlotCandlestickStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotCandlestickStatesInactiveOptions { animation?: PlotCandlestickStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotCandlestickStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotCandlestickStatesOptions { /** * (Highstock) Options for the hovered point. These settings override the * normal state options when a point is moused over or touched. */ hover?: PlotCandlestickStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotCandlestickStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotCandlestickStatesNormalOptions; /** * (Highcharts, Highstock, Gantt) Options for the selected point. These * settings override the normal state options when a point is selected. */ select?: PlotCandlestickStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotCandlestickStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock, Gantt) Options for the selected point. These settings * override the normal state options when a point is selected. */ export interface PlotCandlestickStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotCandlestickStatesSelectAnimationOptions; /** * (Highcharts, Highstock, Gantt) A specific border color for the selected * point. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) A specific color for the selected point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) Enable separate styles for the hovered * series to visualize that the user hovers either the series itself or the * legend. */ enabled?: boolean; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotCandlestickTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotCandlestickTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotCandlestickTooltipDateTimeLabelFormatsOptions|Dictionary<string>); distance?: number; /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) How many decimals to show in each series' y value. This is * overridable in each series' tooltip options object. The default is to * preserve all decimals. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotCandlestickZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotCciAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotCciAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotCciAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotCciAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotCciConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotCciConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotCciConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotCciConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotCciConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotCciConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotCciConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotCciDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotCciDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotCciDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotCciDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotCciDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotCciDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotCciDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotCciDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotCciEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotCciLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotCciLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotCciLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotCciLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotCciLastVisiblePriceLabelOptions; } /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotCciMarkerOptions { /** * (Highstock) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highstock) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highstock) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. */ radius?: number; /** * (Highstock) States for a single point marker. */ states?: PlotCciMarkerStatesOptions; /** * (Highstock) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highstock) Animation when hovering over the marker. */ export interface PlotCciMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highstock) The hover state for a single point marker. */ export interface PlotCciMarkerStatesHoverOptions { /** * (Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotCciMarkerStatesHoverAnimationOptions); /** * (Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highstock) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotCciMarkerStatesInactiveOptions { /** * (Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highstock) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotCciMarkerStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highstock) States for a single point marker. */ export interface PlotCciMarkerStatesOptions { /** * (Highstock) The hover state for a single point marker. */ hover?: PlotCciMarkerStatesHoverOptions; inactive?: PlotCciMarkerStatesInactiveOptions; /** * (Highstock) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotCciMarkerStatesNormalOptions; /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotCciMarkerStatesSelectOptions; } /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotCciMarkerStatesSelectOptions { /** * (Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Commodity Channel Index (CCI). This series requires `linkedTo` * option to be set. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `cci` series are defined in plotOptions.cci. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotCciOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotCciAccessibilityOptions); /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotCciAnimationOptions); /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highstock) Whether to compare indicator to the main series values or * indicator values. */ compareToMain?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotCciConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotCciDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotCciDragDropOptions; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotCciEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotCciLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotCciLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotCciLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The main series ID that indicator will be * based on. Required for this indicator. */ linkedTo?: string; /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotCciMarkerOptions; /** * (Highstock) The name of the series as shown in the legend, tooltip etc. * If not set, it will be based on a technical indicator type and default * params. */ name?: string; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Paramters used in calculation of regression series' points. */ params?: PlotCciParamsOptions; /** * (Highstock) Properties for each single point. */ point?: PlotCciPointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotCciStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotCciTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotCciZonesOptions>; } /** * (Highstock) Paramters used in calculation of regression series' points. */ export interface PlotCciParamsOptions { /** * (Highstock) The point index which indicator calculations will base. For * example using OHLC data, index=2 means the indicator will be calculated * using Low values. */ index?: number; /** * (Highstock) The base period for indicator calculations. This is the * number of data points which are taken into account for the indicator * calculations. */ period?: number; } /** * (Highstock) Events for each single point. */ export interface PlotCciPointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotCciPointOptions { /** * (Highstock) Events for each single point. */ events?: PlotCciPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotCciStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotCciStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotCciStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotCciStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotCciStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotCciStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotCciStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotCciStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotCciStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotCciStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotCciStatesHoverMarkerStatesHoverOptions; inactive?: PlotCciStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotCciStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotCciStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotCciStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotCciStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotCciStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotCciStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotCciStatesHoverMarkerOptions; } export interface PlotCciStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotCciStatesInactiveOptions { animation?: PlotCciStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotCciStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotCciStatesOptions { /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotCciStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotCciStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotCciStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotCciStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotCciStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotCciStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotCciStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotCciStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotCciStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotCciStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotCciStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotCciStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotCciStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotCciStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotCciStatesSelectMarkerStatesHoverOptions; inactive?: PlotCciStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotCciStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotCciStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotCciStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotCciStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotCciStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotCciStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotCciStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotCciTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotCciTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotCciTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) Number of decimals in indicator series. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotCciZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotChaikinAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotChaikinAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotChaikinAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotChaikinAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotChaikinConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotChaikinConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotChaikinConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotChaikinConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotChaikinConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotChaikinConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotChaikinConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotChaikinDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotChaikinDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotChaikinDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotChaikinDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotChaikinDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotChaikinDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotChaikinDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotChaikinDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotChaikinEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotChaikinLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotChaikinLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotChaikinLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotChaikinLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotChaikinLastVisiblePriceLabelOptions; } /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotChaikinMarkerOptions { /** * (Highstock) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highstock) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highstock) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. */ radius?: number; /** * (Highstock) States for a single point marker. */ states?: PlotChaikinMarkerStatesOptions; /** * (Highstock) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highstock) Animation when hovering over the marker. */ export interface PlotChaikinMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highstock) The hover state for a single point marker. */ export interface PlotChaikinMarkerStatesHoverOptions { /** * (Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotChaikinMarkerStatesHoverAnimationOptions); /** * (Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highstock) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotChaikinMarkerStatesInactiveOptions { /** * (Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highstock) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotChaikinMarkerStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highstock) States for a single point marker. */ export interface PlotChaikinMarkerStatesOptions { /** * (Highstock) The hover state for a single point marker. */ hover?: PlotChaikinMarkerStatesHoverOptions; inactive?: PlotChaikinMarkerStatesInactiveOptions; /** * (Highstock) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotChaikinMarkerStatesNormalOptions; /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotChaikinMarkerStatesSelectOptions; } /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotChaikinMarkerStatesSelectOptions { /** * (Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Chaikin Oscillator. This series requires the `linkedTo` option to * be set and should be loaded after the `stock/indicators/indicators.js` and * `stock/indicators/ema.js`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `chaikin` series are defined in plotOptions.chaikin. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotChaikinOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotChaikinAccessibilityOptions); /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotChaikinAnimationOptions); /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highstock) Whether to compare indicator to the main series values or * indicator values. */ compareToMain?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotChaikinConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotChaikinDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotChaikinDragDropOptions; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotChaikinEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotChaikinLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotChaikinLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotChaikinLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The main series ID that indicator will be * based on. Required for this indicator. */ linkedTo?: string; /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotChaikinMarkerOptions; /** * (Highstock) The name of the series as shown in the legend, tooltip etc. * If not set, it will be based on a technical indicator type and default * params. */ name?: string; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Paramters used in calculation of Chaikin Oscillator series * points. */ params?: PlotChaikinParamsOptions; /** * (Highstock) Properties for each single point. */ point?: PlotChaikinPointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotChaikinStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotChaikinTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotChaikinZonesOptions>; } /** * (Highstock) Paramters used in calculation of Chaikin Oscillator series * points. */ export interface PlotChaikinParamsOptions { /** * (Highstock) Periods for Chaikin Oscillator calculations. */ periods?: Array<number>; /** * (Highstock) The id of volume series which is mandatory. For example using * OHLC data, volumeSeriesID='volume' means the indicator will be calculated * using OHLC and volume values. */ volumeSeriesID?: string; } /** * (Highstock) Events for each single point. */ export interface PlotChaikinPointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotChaikinPointOptions { /** * (Highstock) Events for each single point. */ events?: PlotChaikinPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotChaikinStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotChaikinStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotChaikinStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotChaikinStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotChaikinStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotChaikinStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotChaikinStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotChaikinStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotChaikinStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotChaikinStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotChaikinStatesHoverMarkerStatesHoverOptions; inactive?: PlotChaikinStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotChaikinStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotChaikinStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotChaikinStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotChaikinStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotChaikinStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotChaikinStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotChaikinStatesHoverMarkerOptions; } export interface PlotChaikinStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotChaikinStatesInactiveOptions { animation?: PlotChaikinStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotChaikinStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotChaikinStatesOptions { /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotChaikinStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotChaikinStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotChaikinStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotChaikinStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotChaikinStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotChaikinStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotChaikinStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotChaikinStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotChaikinStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotChaikinStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotChaikinStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotChaikinStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotChaikinStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotChaikinStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotChaikinStatesSelectMarkerStatesHoverOptions; inactive?: PlotChaikinStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotChaikinStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotChaikinStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotChaikinStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotChaikinStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotChaikinStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotChaikinStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotChaikinStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotChaikinTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotChaikinTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotChaikinTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) Number of decimals in indicator series. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotChaikinZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotCmfAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotCmfAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotCmfAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotCmfAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotCmfConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotCmfConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotCmfConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotCmfConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotCmfConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotCmfConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotCmfConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotCmfDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotCmfDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotCmfDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotCmfDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotCmfDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotCmfDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotCmfDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotCmfDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotCmfEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotCmfLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotCmfLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotCmfLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotCmfLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotCmfLastVisiblePriceLabelOptions; } /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotCmfMarkerOptions { /** * (Highstock) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highstock) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highstock) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. */ radius?: number; /** * (Highstock) States for a single point marker. */ states?: PlotCmfMarkerStatesOptions; /** * (Highstock) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highstock) Animation when hovering over the marker. */ export interface PlotCmfMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highstock) The hover state for a single point marker. */ export interface PlotCmfMarkerStatesHoverOptions { /** * (Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotCmfMarkerStatesHoverAnimationOptions); /** * (Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highstock) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotCmfMarkerStatesInactiveOptions { /** * (Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highstock) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotCmfMarkerStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highstock) States for a single point marker. */ export interface PlotCmfMarkerStatesOptions { /** * (Highstock) The hover state for a single point marker. */ hover?: PlotCmfMarkerStatesHoverOptions; inactive?: PlotCmfMarkerStatesInactiveOptions; /** * (Highstock) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotCmfMarkerStatesNormalOptions; /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotCmfMarkerStatesSelectOptions; } /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotCmfMarkerStatesSelectOptions { /** * (Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Chaikin Money Flow indicator (cmf). * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `cmf` series are defined in plotOptions.cmf. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotCmfOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotCmfAccessibilityOptions); /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotCmfAnimationOptions); /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highstock) Whether to compare indicator to the main series values or * indicator values. */ compareToMain?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotCmfConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotCmfDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotCmfDragDropOptions; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotCmfEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotCmfLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotCmfLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotCmfLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The main series ID that indicator will be * based on. Required for this indicator. */ linkedTo?: string; /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotCmfMarkerOptions; /** * (Highstock) The name of the series as shown in the legend, tooltip etc. * If not set, it will be based on a technical indicator type and default * params. */ name?: string; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Paramters used in calculation of regression series' points. */ params?: PlotCmfParamsOptions; /** * (Highstock) Properties for each single point. */ point?: PlotCmfPointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotCmfStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotCmfTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotCmfZonesOptions>; } /** * (Highstock) Paramters used in calculation of regression series' points. */ export interface PlotCmfParamsOptions { /** * (Highstock) The point index which indicator calculations will base. For * example using OHLC data, index=2 means the indicator will be calculated * using Low values. */ index?: number; /** * (Highstock) The base period for indicator calculations. This is the * number of data points which are taken into account for the indicator * calculations. */ period?: number; /** * (Highstock) The id of another series to use its data as volume data for * the indiator calculation. */ volumeSeriesID?: string; } /** * (Highstock) Events for each single point. */ export interface PlotCmfPointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotCmfPointOptions { /** * (Highstock) Events for each single point. */ events?: PlotCmfPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotCmfStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotCmfStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotCmfStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotCmfStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotCmfStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotCmfStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotCmfStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotCmfStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotCmfStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotCmfStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotCmfStatesHoverMarkerStatesHoverOptions; inactive?: PlotCmfStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotCmfStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotCmfStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotCmfStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotCmfStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotCmfStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotCmfStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotCmfStatesHoverMarkerOptions; } export interface PlotCmfStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotCmfStatesInactiveOptions { animation?: PlotCmfStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotCmfStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotCmfStatesOptions { /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotCmfStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotCmfStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotCmfStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotCmfStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotCmfStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotCmfStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotCmfStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotCmfStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotCmfStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotCmfStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotCmfStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotCmfStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotCmfStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotCmfStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotCmfStatesSelectMarkerStatesHoverOptions; inactive?: PlotCmfStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotCmfStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotCmfStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotCmfStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotCmfStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotCmfStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotCmfStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotCmfStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotCmfTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotCmfTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotCmfTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) Number of decimals in indicator series. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotCmfZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts, Highstock) Keyboard navigation for a series */ export interface PlotColumnAccessibilityKeyboardNavigationOptions { /** * (Highcharts, Highstock) Enable/disable keyboard navigation support for a * specific series. */ enabled?: boolean; } /** * (Highcharts, Highstock) Accessibility options for a series. Requires the * accessibility module. */ export interface PlotColumnAccessibilityOptions { /** * (Highcharts, Highstock) Provide a description of the series, announced to * screen readers. */ description?: string; /** * (Highcharts, Highstock) Enable/disable accessibility functionality for a * specific series. */ enabled?: boolean; /** * (Highcharts, Highstock) Expose only the series element to screen readers, * not its points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts, Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotColumnAccessibilityKeyboardNavigationOptions); /** * (Highcharts, Highstock) Formatter function to use instead of the default * for point descriptions. Same as * `accessibility.pointDescriptionFormatter`, but for a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts, Highstock) Enable or disable the initial animation when a series * is displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotColumnAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotColumnConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotColumnConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotColumnConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotColumnConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotColumnConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotColumnConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotColumnConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotColumnDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. Defaults to `10`. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts, Highstock) Options for the drag handles. */ export interface PlotColumnDragDropDragHandleOptions { /** * (Highcharts, Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts, Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The mouse cursor to use for the drag handles. By * default this is intelligently switching between `ew-resize` and * `ns-resize` depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts, Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts, Highstock) Function to define the SVG path to use for the * drag handles. Takes the point as argument. Should return an SVG path in * array format. The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts, Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box default state. */ export interface PlotColumnDragDropGuideBoxDefaultOptions { /** * (Highcharts, Highstock) CSS class name of the guide box in this state. * Defaults to `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts, Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Guide box cursor. */ cursor?: string; /** * (Highcharts, Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts, Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts, Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box. The guide box has * one state by default, the `default` state. */ export interface PlotColumnDragDropGuideBoxOptions { /** * (Highcharts, Highstock) Style options for the guide box default state. */ default?: PlotColumnDragDropGuideBoxDefaultOptions; } /** * (Highcharts, Highstock) The draggable-points module allows points to be moved * around or modified in the chart. In addition to the options mentioned under * the `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotColumnDragDropOptions { /** * (Highcharts, Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts, Highstock) Enable dragging in the Y dimension. Note that * this is not supported for TreeGrid axes (the default axis type in Gantt * charts). */ draggableY?: boolean; /** * (Highcharts, Highstock) Options for the drag handles. */ dragHandle?: PlotColumnDragDropDragHandleOptions; /** * (Highcharts, Highstock) Set the maximum X value the points can be moved * to. */ dragMaxX?: number; /** * (Highcharts, Highstock) Set the maximum Y value the points can be moved * to. */ dragMaxY?: number; /** * (Highcharts, Highstock) Set the minimum X value the points can be moved * to. */ dragMinX?: number; /** * (Highcharts, Highstock) Set the minimum Y value the points can be moved * to. */ dragMinY?: number; /** * (Highcharts, Highstock) The X precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionX?: number; /** * (Highcharts, Highstock) The Y precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionY?: number; /** * (Highcharts, Highstock) The amount of pixels to drag the pointer before * it counts as a drag operation. This prevents drag/drop to fire when just * clicking or selecting points. */ dragSensitivity?: number; /** * (Highcharts, Highstock) Group the points by a property. Points with the * same property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts, Highstock) Style options for the guide box. The guide box * has one state by default, the `default` state. */ guideBox?: (PlotColumnDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts, Highstock) Update points as they are dragged. If false, a * guide box is drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock) General event handlers for the series items. These * event hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotColumnEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts, Highstock) Fires when the checkbox next to the series' name * in the legend is clicked. One parameter, `event`, is passed to the * function. The state of the checkbox is found by `event.checked`. The * checked item is found by `event.item`. Return `false` to prevent the * default action which is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is clicked. One parameter, * `event`, is passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is hidden after chart * generation time, either by clicking the legend item or by calling * `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts, Highstock) Fires when the legend item belonging to the * series is clicked. One parameter, `event`, is passed to the function. The * default action is to toggle the visibility of the series. This can be * prevented by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse leaves the graph. One * parameter, `event`, is passed to the function, containing common event * information. If the stickyTracking option is true, `mouseOut` doesn't * happen before the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse enters the graph. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is shown after chart * generation time, either by clicking the legend item or by calling * `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotColumnLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotColumnLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotColumnLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotColumnLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotColumnLastVisiblePriceLabelOptions; } /** * (Highcharts, Highstock) Column series display one column per value along an X * axis. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `column` series are defined in plotOptions.column. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotColumnOptions { /** * (Highcharts, Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotColumnAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highcharts, Highstock) Allow this series' points to be selected by * clicking on the graphic (columns, point markers, pie slices, map areas * etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts, Highstock) Enable or disable the initial animation when a * series is displayed. The animation can also be set as a configuration * object. Please note that this option only applies to the initial * animation of the series itself. For other animations, see chart.animation * and the animation parameter under the API methods. The following * properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotColumnAnimationOptions); /** * (Highcharts, Highstock) For some series, there is a limit that shuts down * initial animation by default when the total number of points in the chart * is too high. For example, for a column chart and its derivatives, * animation does not run if there is more than 250 points totally. To * disable this cap, set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highcharts, Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts, Highstock) Set the point threshold for when a series should * enter boost mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highcharts, Highstock, Gantt) The color of the border surrounding each * column or bar. * * In styled mode, the border stroke can be set with the `.highcharts-point` * rule. */ borderColor?: ColorString; /** * (Highcharts, Highstock, Gantt) The corner radius of the border * surrounding each column or bar. */ borderRadius?: number; /** * (Highcharts, Highstock, Gantt) The width of the border surrounding each * column or bar. Defaults to `1` when there is room for a border, but to * `0` when the columns are so dense that a border would cover the next * column. * * In styled mode, the stroke width can be set with the `.highcharts-point` * rule. */ borderWidth?: number; /** * (Highcharts, Highstock) An additional class name to apply to the series' * graphical elements. This option does not replace default class names of * the graphical element. */ className?: string; /** * (Highcharts, Highstock) Disable this option to allow series rendering in * the whole plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts, Highstock) The main color of the series. In line type series * it applies to the line and the point markers unless otherwise specified. * In bar type series it applies to the bars unless a color is specified per * point. The default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts, Highstock, Gantt) When using automatic point colors pulled * from the global colors or series-specific plotOptions.column.colors * collections, this option determines whether the chart should receive one * color per series or one color per point. * * In styled mode, the `colors` or `series.colors` arrays are not supported, * and instead this option gives the points individual color class names on * the form `highcharts-color-{n}`. */ colorByPoint?: boolean; /** * (Highcharts, Highstock) Styled mode only. A specific color index to use * for the series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) A series specific or series type specific * color set to apply instead of the global colors when colorByPoint is * true. */ colors?: Array<(ColorString|GradientColorObject|PatternObject)>; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotColumnConnectorsOptions; /** * (Highcharts, Highstock, Gantt) When true, each column edge is rounded to * its nearest pixel in order to render sharp on screen. In some cases, when * there are a lot of densely packed columns, this leads to visible * difference in column widths or distance between columns. In these cases, * setting `crisp` to `false` may look better, even though each column is * rendered blurry. */ crisp?: boolean; /** * (Highcharts, Highstock, Gantt) When the series contains less points than * the crop threshold, all points are drawn, event if the points fall * outside the visible plot area at the current zoom. The advantage of * drawing all points (including markers and columns), is that animation is * performed on updates. On the other hand, when the series contains more * points than the crop threshold, the series data is cropped to only * contain points that fall within the plot area. The advantage of cropping * away invisible points is to increase performance on large series. */ cropThreshold?: number; /** * (Highcharts, Highstock) You can set the cursor to "pointer" if you have * click events attached to the series, to signal to the user that the * points and lines can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotColumnDataGroupingOptions; /** * (Highcharts, Highstock) Options for the series data labels, appearing * next to each data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) Depth of the columns in a 3D column chart. Requires * `highcharts-3d.js`. */ depth?: number; /** * (Highcharts, Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts, Highstock) The draggable-points module allows points to be * moved around or modified in the chart. In addition to the options * mentioned under the `dragDrop` API structure, the module fires three * events, point.dragStart, point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotColumnDragDropOptions; /** * (Highcharts) 3D columns only. The color of the edges. Similar to * `borderColor`, except it defaults to the same color as the column. */ edgeColor?: ColorString; /** * (Highcharts) 3D columns only. The width of the colored edges. */ edgeWidth?: number; /** * (Highcharts, Highstock) Enable or disable the mouse tracking for a * specific series. This includes point tooltips and click events on graphs * and points. For large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts, Highstock) General event handlers for the series items. * These event hooks can also be attached to the series at run time using * the `Highcharts.addEvent` function. */ events?: PlotColumnEventsOptions; /** * (Highcharts, Highstock) By default, series are exposed to screen readers * as regions. By enabling this option, the series element itself will be * exposed in the same way as the data points. This is useful if the series * is not used as a grouping entity in the chart, but you still want to * attach a description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highcharts, Highstock) Determines whether the series should look for the * nearest point in both dimensions or just the x-dimension when hovering * the series. Defaults to `'xy'` for scatter series and `'x'` for most * other series. If the data has duplicate x-values, it is recommended to * set this to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highcharts, Highstock, Gantt) Whether to group non-stacked columns or to * let them render independent of each other. Non-grouped columns will be * laid out individually and overlap each other. */ grouping?: boolean; /** * (Highcharts, Highstock, Gantt) Padding between each value groups, in x * axis units. */ groupPadding?: number; /** * (Highcharts) The spacing between columns on the Z Axis in a 3D chart. * Requires `highcharts-3d.js`. */ groupZPadding?: number; /** * (Highcharts, Highstock) Export-data module required. When set to `false` * will prevent the series data from being included in any form of data * export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts, Highstock) An array specifying which option maps to which * key in the data point array. This makes it convenient to work with * unstructured data arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotColumnLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotColumnLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotColumnLastVisiblePriceOptions; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts, Highstock, Gantt) The maximum allowed pixel width for a * column, translated to the height of a bar in a bar chart. This prevents * the columns from becoming too wide when there is a small number of points * in the chart. */ maxPointWidth?: number; /** * (Highcharts, Highstock, Gantt) The minimal height for a column or width * for a bar. By default, 0 values are not shown. To visualize a 0 (or close * to zero) point, set the minimal point length to a pixel value like 3\. In * stacked column charts, minPointLength might not be respected for tightly * packed values. */ minPointLength?: number; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts, Highstock) The color for the parts of the graph or points * that are below the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Opacity of a series parts: line, fill (e.g. area) * and dataLabels. */ opacity?: number; /** * (Highcharts, Highstock) Properties for each single point. */ point?: PlotColumnPointOptions; /** * (Highcharts, Highstock) Same as accessibility.pointDescriptionFormatter, * but for an individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, `pointInterval` defines the interval of the x values. For * example, if a series contains one value every decade starting from year * 0, set `pointInterval` to `10`. In true `datetime` axes, the * `pointInterval` is set in milliseconds. * * It can be also be combined with `pointIntervalUnit` to draw irregular * time intervals. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointInterval?: number; /** * (Highcharts, Highstock, Gantt) On datetime series, this allows for * setting the pointInterval to irregular time units, `day`, `month` and * `year`. A day is usually the same as 24 hours, but `pointIntervalUnit` * also takes the DST crossover into consideration when dealing with local * time. Combine this option with `pointInterval` to draw weeks, quarters, 6 * months, 10 years etc. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointIntervalUnit?: OptionsPointIntervalUnitValue; /** * (Highcharts, Highstock, Gantt) Padding between each column or bar, in x * axis units. */ pointPadding?: number; /** * (Highcharts, Highstock, Gantt) Possible values: `"on"`, `"between"`, * `number`. * * In a column chart, when pointPlacement is `"on"`, the point will not * create any padding of the X axis. In a polar column chart this means that * the first column points directly north. If the pointPlacement is * `"between"`, the columns will be laid out between ticks. This is useful * for example for visualising an amount between two points in time or in a * certain sector of a polar chart. * * Since Highcharts 3.0.2, the point placement can also be numeric, where 0 * is on the axis value, -0.5 is between this value and the previous, and * 0.5 is between this value and the next. Unlike the textual options, * numeric point placement options won't affect axis padding. * * Note that pointPlacement needs a pointRange to work. For column series * this is computed, but for line-type series it needs to be set. * * For the `xrange` series type and gantt charts, if the Y axis is a * category axis, the `pointPlacement` applies to the Y axis rather than the * (typically datetime) X axis. * * Defaults to `undefined` in cartesian charts, `"between"` in polar charts. */ pointPlacement?: (number|string); /** * (Highcharts, Highstock, Gantt) The X axis range that each point is valid * for. This determines the width of the column. On a categorized axis, the * range will be 1 by default (one category unit). On linear and datetime * axes, the range will be computed as the distance between the two closest * data points. * * The default `null` means it is computed automatically, but this option * can be used to override the automatic value. */ pointRange?: (number|null); /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, pointStart defines on what value to start. For example, if a * series contains one yearly value starting from 1945, set pointStart to * 1945. */ pointStart?: number; /** * (Highcharts, Highstock, Gantt) A pixel value specifying a fixed width for * each column or bar. When `null`, the width is calculated from the * `pointPadding` and `groupPadding`. */ pointWidth?: number; /** * (Highcharts, Highstock) Whether to select the series initially. If * `showCheckbox` is true, the checkbox next to the series name in the * legend will be checked for a selected series. */ selected?: boolean; /** * (Highcharts, Highstock) Whether to apply a drop shadow to the graph line. * Since 2.3 the shadow can be an object configuration containing `color`, * `offsetX`, `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highcharts, Highstock) If true, a checkbox is displayed next to the * legend item to allow selecting the series. The state of the checkbox is * determined by the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts, Highstock) Whether to display this particular series or * series type in the legend. The default value is `true` for standalone * series, `false` for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts, Highstock) If set to `true`, the accessibility module will * skip past the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; /** * (Highcharts, Highstock) Whether to stack the values of each series on top * of each other. Possible values are `undefined` to disable, `"normal"` to * stack by value or `"percent"`. When stacking is enabled, data must be * sorted in ascending X order. A special stacking option is with the * streamgraph series type, where the stacking option is set to `"stream"`. * The second one is `"overlap"`, which only applies to waterfall series. */ stacking?: OptionsStackingValue; states?: PlotColumnStatesOptions; /** * (Highcharts, Highstock) Sticky tracking of mouse events. When true, the * `mouseOut` event on a series isn't triggered until the mouse moves over * another series, or out of the plot area. When false, the `mouseOut` event * on a series is triggered when the mouse leaves the area around the * series' graph or markers. This also implies the tooltip when not shared. * When `stickyTracking` is false and `tooltip.shared` is false, the tooltip * will be hidden when moving the mouse between series. Defaults to true for * line and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts) The Y axis value to serve as the base for the columns, for * distinguishing between values above and below a threshold. If `null`, the * columns extend from the padding Y axis minimum. */ threshold?: number; /** * (Highcharts, Highstock) A configuration object for the tooltip rendering * of each single series. Properties are inherited from tooltip, but only * the following properties can be defined on a series level. */ tooltip?: PlotColumnTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highcharts, Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotColumnZonesOptions>; } /** * (Highcharts, Highstock) Events for each single point. */ export interface PlotColumnPointEventsOptions { /** * (Highcharts, Highstock) Fires when a point is clicked. One parameter, * `event`, is passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock) Callback that fires while dragging a point. The * mouse event is passed in as parameter. The original data can be accessed * from `e.origin`, and the new point values can be accessed from * `e.newPoints`. If there is only a single point being updated, it can be * accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock) Callback that fires when starting to drag a * point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock) Callback that fires when the point is dropped. * The parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse leaves the area close to the * point. One parameter, `event`, is passed to the function, containing * common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse enters the area close to the * point. One parameter, `event`, is passed to the function, containing * common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is updated programmatically * through the `.update()` method. One parameter, `event`, is passed to the * function. The new point options can be accessed through `event.options`. * Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts, Highstock) Properties for each single point. */ export interface PlotColumnPointOptions { /** * (Highcharts, Highstock) Events for each single point. */ events?: PlotColumnPointEventsOptions; } /** * (Highcharts, Highstock) Keyboard navigation for a series */ export interface PlotColumnpyramidAccessibilityKeyboardNavigationOptions { /** * (Highcharts, Highstock) Enable/disable keyboard navigation support for a * specific series. */ enabled?: boolean; } /** * (Highcharts, Highstock) Accessibility options for a series. Requires the * accessibility module. */ export interface PlotColumnpyramidAccessibilityOptions { /** * (Highcharts, Highstock) Provide a description of the series, announced to * screen readers. */ description?: string; /** * (Highcharts, Highstock) Enable/disable accessibility functionality for a * specific series. */ enabled?: boolean; /** * (Highcharts, Highstock) Expose only the series element to screen readers, * not its points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts, Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotColumnpyramidAccessibilityKeyboardNavigationOptions); /** * (Highcharts, Highstock) Formatter function to use instead of the default * for point descriptions. Same as * `accessibility.pointDescriptionFormatter`, but for a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts, Highstock) Enable or disable the initial animation when a series * is displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotColumnpyramidAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotColumnpyramidConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotColumnpyramidConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotColumnpyramidConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotColumnpyramidConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotColumnpyramidConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotColumnpyramidConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotColumnpyramidConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotColumnpyramidDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. Defaults to `10`. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts, Highstock) Options for the drag handles. */ export interface PlotColumnpyramidDragDropDragHandleOptions { /** * (Highcharts, Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts, Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The mouse cursor to use for the drag handles. By * default this is intelligently switching between `ew-resize` and * `ns-resize` depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts, Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts, Highstock) Function to define the SVG path to use for the * drag handles. Takes the point as argument. Should return an SVG path in * array format. The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts, Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box default state. */ export interface PlotColumnpyramidDragDropGuideBoxDefaultOptions { /** * (Highcharts, Highstock) CSS class name of the guide box in this state. * Defaults to `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts, Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Guide box cursor. */ cursor?: string; /** * (Highcharts, Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts, Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts, Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box. The guide box has * one state by default, the `default` state. */ export interface PlotColumnpyramidDragDropGuideBoxOptions { /** * (Highcharts, Highstock) Style options for the guide box default state. */ default?: PlotColumnpyramidDragDropGuideBoxDefaultOptions; } /** * (Highcharts, Highstock) The draggable-points module allows points to be moved * around or modified in the chart. In addition to the options mentioned under * the `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotColumnpyramidDragDropOptions { /** * (Highcharts, Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts, Highstock) Enable dragging in the Y dimension. Note that * this is not supported for TreeGrid axes (the default axis type in Gantt * charts). */ draggableY?: boolean; /** * (Highcharts, Highstock) Options for the drag handles. */ dragHandle?: PlotColumnpyramidDragDropDragHandleOptions; /** * (Highcharts, Highstock) Set the maximum X value the points can be moved * to. */ dragMaxX?: number; /** * (Highcharts, Highstock) Set the maximum Y value the points can be moved * to. */ dragMaxY?: number; /** * (Highcharts, Highstock) Set the minimum X value the points can be moved * to. */ dragMinX?: number; /** * (Highcharts, Highstock) Set the minimum Y value the points can be moved * to. */ dragMinY?: number; /** * (Highcharts, Highstock) The X precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionX?: number; /** * (Highcharts, Highstock) The Y precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionY?: number; /** * (Highcharts, Highstock) The amount of pixels to drag the pointer before * it counts as a drag operation. This prevents drag/drop to fire when just * clicking or selecting points. */ dragSensitivity?: number; /** * (Highcharts, Highstock) Group the points by a property. Points with the * same property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts, Highstock) Style options for the guide box. The guide box * has one state by default, the `default` state. */ guideBox?: (PlotColumnpyramidDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts, Highstock) Update points as they are dragged. If false, a * guide box is drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock) General event handlers for the series items. These * event hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotColumnpyramidEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts, Highstock) Fires when the checkbox next to the series' name * in the legend is clicked. One parameter, `event`, is passed to the * function. The state of the checkbox is found by `event.checked`. The * checked item is found by `event.item`. Return `false` to prevent the * default action which is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is clicked. One parameter, * `event`, is passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is hidden after chart * generation time, either by clicking the legend item or by calling * `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts, Highstock) Fires when the legend item belonging to the * series is clicked. One parameter, `event`, is passed to the function. The * default action is to toggle the visibility of the series. This can be * prevented by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse leaves the graph. One * parameter, `event`, is passed to the function, containing common event * information. If the stickyTracking option is true, `mouseOut` doesn't * happen before the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse enters the graph. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is shown after chart * generation time, either by clicking the legend item or by calling * `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotColumnpyramidLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotColumnpyramidLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotColumnpyramidLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotColumnpyramidLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotColumnpyramidLastVisiblePriceLabelOptions; } /** * (Highcharts, Highstock) Column pyramid series display one pyramid per value * along an X axis. Requires `highcharts-more.js`. To display horizontal * pyramids, set chart.inverted to `true`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `columnpyramid` series are defined in * plotOptions.columnpyramid. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotColumnpyramidOptions { /** * (Highcharts, Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotColumnpyramidAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highcharts, Highstock) Allow this series' points to be selected by * clicking on the graphic (columns, point markers, pie slices, map areas * etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts, Highstock) Enable or disable the initial animation when a * series is displayed. The animation can also be set as a configuration * object. Please note that this option only applies to the initial * animation of the series itself. For other animations, see chart.animation * and the animation parameter under the API methods. The following * properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotColumnpyramidAnimationOptions); /** * (Highcharts, Highstock) For some series, there is a limit that shuts down * initial animation by default when the total number of points in the chart * is too high. For example, for a column chart and its derivatives, * animation does not run if there is more than 250 points totally. To * disable this cap, set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highcharts, Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts, Highstock, Gantt) The color of the border surrounding each * column or bar. * * In styled mode, the border stroke can be set with the `.highcharts-point` * rule. */ borderColor?: ColorString; /** * (Highcharts, Highstock, Gantt) The width of the border surrounding each * column or bar. Defaults to `1` when there is room for a border, but to * `0` when the columns are so dense that a border would cover the next * column. * * In styled mode, the stroke width can be set with the `.highcharts-point` * rule. */ borderWidth?: number; /** * (Highcharts, Highstock) An additional class name to apply to the series' * graphical elements. This option does not replace default class names of * the graphical element. */ className?: string; /** * (Highcharts, Highstock) Disable this option to allow series rendering in * the whole plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts, Highstock) The main color of the series. In line type series * it applies to the line and the point markers unless otherwise specified. * In bar type series it applies to the bars unless a color is specified per * point. The default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts, Highstock, Gantt) When using automatic point colors pulled * from the global colors or series-specific plotOptions.column.colors * collections, this option determines whether the chart should receive one * color per series or one color per point. * * In styled mode, the `colors` or `series.colors` arrays are not supported, * and instead this option gives the points individual color class names on * the form `highcharts-color-{n}`. */ colorByPoint?: boolean; /** * (Highcharts, Highstock) Styled mode only. A specific color index to use * for the series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) A series specific or series type specific * color set to apply instead of the global colors when colorByPoint is * true. */ colors?: Array<(ColorString|GradientColorObject|PatternObject)>; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotColumnpyramidConnectorsOptions; /** * (Highcharts, Highstock, Gantt) When the series contains less points than * the crop threshold, all points are drawn, event if the points fall * outside the visible plot area at the current zoom. The advantage of * drawing all points (including markers and columns), is that animation is * performed on updates. On the other hand, when the series contains more * points than the crop threshold, the series data is cropped to only * contain points that fall within the plot area. The advantage of cropping * away invisible points is to increase performance on large series. */ cropThreshold?: number; /** * (Highcharts, Highstock) You can set the cursor to "pointer" if you have * click events attached to the series, to signal to the user that the * points and lines can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotColumnpyramidDataGroupingOptions; /** * (Highcharts, Highstock) Options for the series data labels, appearing * next to each data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts, Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts, Highstock) The draggable-points module allows points to be * moved around or modified in the chart. In addition to the options * mentioned under the `dragDrop` API structure, the module fires three * events, point.dragStart, point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotColumnpyramidDragDropOptions; /** * (Highcharts, Highstock) Enable or disable the mouse tracking for a * specific series. This includes point tooltips and click events on graphs * and points. For large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts, Highstock) General event handlers for the series items. * These event hooks can also be attached to the series at run time using * the `Highcharts.addEvent` function. */ events?: PlotColumnpyramidEventsOptions; /** * (Highcharts, Highstock) By default, series are exposed to screen readers * as regions. By enabling this option, the series element itself will be * exposed in the same way as the data points. This is useful if the series * is not used as a grouping entity in the chart, but you still want to * attach a description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highcharts, Highstock) Determines whether the series should look for the * nearest point in both dimensions or just the x-dimension when hovering * the series. Defaults to `'xy'` for scatter series and `'x'` for most * other series. If the data has duplicate x-values, it is recommended to * set this to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highcharts, Highstock, Gantt) Whether to group non-stacked columns or to * let them render independent of each other. Non-grouped columns will be * laid out individually and overlap each other. */ grouping?: boolean; /** * (Highcharts, Highstock, Gantt) Padding between each value groups, in x * axis units. */ groupPadding?: number; /** * (Highcharts, Highstock) Export-data module required. When set to `false` * will prevent the series data from being included in any form of data * export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts, Highstock) An array specifying which option maps to which * key in the data point array. This makes it convenient to work with * unstructured data arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotColumnpyramidLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotColumnpyramidLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotColumnpyramidLastVisiblePriceOptions; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts, Highstock, Gantt) The maximum allowed pixel width for a * column, translated to the height of a bar in a bar chart. This prevents * the columns from becoming too wide when there is a small number of points * in the chart. */ maxPointWidth?: number; /** * (Highcharts, Highstock, Gantt) The minimal height for a column or width * for a bar. By default, 0 values are not shown. To visualize a 0 (or close * to zero) point, set the minimal point length to a pixel value like 3\. In * stacked column charts, minPointLength might not be respected for tightly * packed values. */ minPointLength?: number; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts, Highstock) Opacity of a series parts: line, fill (e.g. area) * and dataLabels. */ opacity?: number; /** * (Highcharts, Highstock) Properties for each single point. */ point?: PlotColumnpyramidPointOptions; /** * (Highcharts, Highstock) Same as accessibility.pointDescriptionFormatter, * but for an individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, `pointInterval` defines the interval of the x values. For * example, if a series contains one value every decade starting from year * 0, set `pointInterval` to `10`. In true `datetime` axes, the * `pointInterval` is set in milliseconds. * * It can be also be combined with `pointIntervalUnit` to draw irregular * time intervals. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointInterval?: number; /** * (Highcharts, Highstock, Gantt) On datetime series, this allows for * setting the pointInterval to irregular time units, `day`, `month` and * `year`. A day is usually the same as 24 hours, but `pointIntervalUnit` * also takes the DST crossover into consideration when dealing with local * time. Combine this option with `pointInterval` to draw weeks, quarters, 6 * months, 10 years etc. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointIntervalUnit?: OptionsPointIntervalUnitValue; /** * (Highcharts, Highstock, Gantt) Padding between each column or bar, in x * axis units. */ pointPadding?: number; /** * (Highcharts, Highstock, Gantt) Possible values: `"on"`, `"between"`, * `number`. * * In a column chart, when pointPlacement is `"on"`, the point will not * create any padding of the X axis. In a polar column chart this means that * the first column points directly north. If the pointPlacement is * `"between"`, the columns will be laid out between ticks. This is useful * for example for visualising an amount between two points in time or in a * certain sector of a polar chart. * * Since Highcharts 3.0.2, the point placement can also be numeric, where 0 * is on the axis value, -0.5 is between this value and the previous, and * 0.5 is between this value and the next. Unlike the textual options, * numeric point placement options won't affect axis padding. * * Note that pointPlacement needs a pointRange to work. For column series * this is computed, but for line-type series it needs to be set. * * For the `xrange` series type and gantt charts, if the Y axis is a * category axis, the `pointPlacement` applies to the Y axis rather than the * (typically datetime) X axis. * * Defaults to `undefined` in cartesian charts, `"between"` in polar charts. */ pointPlacement?: (number|string); /** * (Highcharts, Highstock, Gantt) The X axis range that each point is valid * for. This determines the width of the column. On a categorized axis, the * range will be 1 by default (one category unit). On linear and datetime * axes, the range will be computed as the distance between the two closest * data points. * * The default `null` means it is computed automatically, but this option * can be used to override the automatic value. */ pointRange?: (number|null); /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, pointStart defines on what value to start. For example, if a * series contains one yearly value starting from 1945, set pointStart to * 1945. */ pointStart?: number; /** * (Highcharts, Highstock, Gantt) A pixel value specifying a fixed width for * each column or bar. When `null`, the width is calculated from the * `pointPadding` and `groupPadding`. */ pointWidth?: number; /** * (Highcharts, Highstock) Whether to select the series initially. If * `showCheckbox` is true, the checkbox next to the series name in the * legend will be checked for a selected series. */ selected?: boolean; /** * (Highcharts, Highstock) Whether to apply a drop shadow to the graph line. * Since 2.3 the shadow can be an object configuration containing `color`, * `offsetX`, `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highcharts, Highstock) If true, a checkbox is displayed next to the * legend item to allow selecting the series. The state of the checkbox is * determined by the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts, Highstock) Whether to display this particular series or * series type in the legend. The default value is `true` for standalone * series, `false` for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts, Highstock) If set to `true`, the accessibility module will * skip past the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) Whether to stack the values of each series on top * of each other. Possible values are `undefined` to disable, `"normal"` to * stack by value or `"percent"`. When stacking is enabled, data must be * sorted in ascending X order. A special stacking option is with the * streamgraph series type, where the stacking option is set to `"stream"`. * The second one is `"overlap"`, which only applies to waterfall series. */ stacking?: OptionsStackingValue; states?: PlotColumnpyramidStatesOptions; /** * (Highcharts, Highstock) Sticky tracking of mouse events. When true, the * `mouseOut` event on a series isn't triggered until the mouse moves over * another series, or out of the plot area. When false, the `mouseOut` event * on a series is triggered when the mouse leaves the area around the * series' graph or markers. This also implies the tooltip when not shared. * When `stickyTracking` is false and `tooltip.shared` is false, the tooltip * will be hidden when moving the mouse between series. Defaults to true for * line and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) A configuration object for the tooltip rendering * of each single series. Properties are inherited from tooltip, but only * the following properties can be defined on a series level. */ tooltip?: PlotColumnpyramidTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highcharts, Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; } /** * (Highcharts, Highstock) Events for each single point. */ export interface PlotColumnpyramidPointEventsOptions { /** * (Highcharts, Highstock) Fires when a point is clicked. One parameter, * `event`, is passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock) Callback that fires while dragging a point. The * mouse event is passed in as parameter. The original data can be accessed * from `e.origin`, and the new point values can be accessed from * `e.newPoints`. If there is only a single point being updated, it can be * accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock) Callback that fires when starting to drag a * point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock) Callback that fires when the point is dropped. * The parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse leaves the area close to the * point. One parameter, `event`, is passed to the function, containing * common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse enters the area close to the * point. One parameter, `event`, is passed to the function, containing * common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is updated programmatically * through the `.update()` method. One parameter, `event`, is passed to the * function. The new point options can be accessed through `event.options`. * Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts, Highstock) Properties for each single point. */ export interface PlotColumnpyramidPointOptions { /** * (Highcharts, Highstock) Events for each single point. */ events?: PlotColumnpyramidPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotColumnpyramidStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock, Gantt) Options for the hovered point. These settings * override the normal state options when a point is moused over or touched. */ export interface PlotColumnpyramidStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotColumnpyramidStatesHoverAnimationOptions); /** * (Highcharts, Gantt) A specific border color for the hovered point. * Defaults to inherit the normal state border color. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) How much to brighten the point on * interaction. Requires the main color to be defined in hex or rgb(a) * format. * * In styled mode, the hover brightening is by default replaced with a * fill-opacity set in the `.highcharts-point:hover` rule. */ brightness?: number; /** * (Highcharts, Gantt) A specific color for the hovered point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) Enable separate styles for the hovered * series to visualize that the user hovers either the series itself or the * legend. */ enabled?: boolean; } export interface PlotColumnpyramidStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The opposite state of a hover for series. */ export interface PlotColumnpyramidStatesInactiveOptions { animation?: PlotColumnpyramidStatesInactiveAnimationOptions; /** * (Highcharts, Highstock) Opacity of series elements (dataLabels, line, * area). */ opacity?: number; } /** * (Highcharts, Highstock) The normal state of a series, or for point items in * column, pie and similar series. Currently only used for setting animation * when returning to normal state from hover. */ export interface PlotColumnpyramidStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotColumnpyramidStatesOptions { /** * (Highcharts, Highstock, Gantt) Options for the hovered point. These * settings override the normal state options when a point is moused over or * touched. */ hover?: PlotColumnpyramidStatesHoverOptions; /** * (Highcharts, Highstock) The opposite state of a hover for series. */ inactive?: PlotColumnpyramidStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a series, or for point items * in column, pie and similar series. Currently only used for setting * animation when returning to normal state from hover. */ normal?: PlotColumnpyramidStatesNormalOptions; /** * (Highcharts, Highstock, Gantt) Options for the selected point. These * settings override the normal state options when a point is selected. */ select?: PlotColumnpyramidStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotColumnpyramidStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock, Gantt) Options for the selected point. These settings * override the normal state options when a point is selected. */ export interface PlotColumnpyramidStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotColumnpyramidStatesSelectAnimationOptions; /** * (Highcharts, Highstock, Gantt) A specific border color for the selected * point. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) A specific color for the selected point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) Enable separate styles for the hovered * series to visualize that the user hovers either the series itself or the * legend. */ enabled?: boolean; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotColumnpyramidTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts, Highstock) A configuration object for the tooltip rendering of * each single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ export interface PlotColumnpyramidTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotColumnpyramidTooltipDateTimeLabelFormatsOptions|Dictionary<string>); distance?: number; /** * (Highcharts, Highstock) Whether the tooltip should follow the mouse as it * moves across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts, Highstock) Whether the tooltip should update as the finger * moves on a touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts, Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts, Highstock) The HTML of the tooltip header line. Variables * are enclosed by curly brackets. Available variables are `point.key`, * `series.name`, `series.color` and other members from the `point` and * `series` objects. The `point.key` variable contains the category name, x * value or datetime string depending on the type of axis. For datetime * axes, the `point.key` date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts, Highstock) The name of a symbol to use for the border around * the tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts, Highstock) The number of milliseconds to wait until the * tooltip is hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts, Highstock) The HTML of the null point's line in the tooltip. * Works analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts, Highstock) Callback function to format the text of the * tooltip for visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts, Highstock) Whether to allow the tooltip to render outside * the chart's SVG element box. By default (`false`), the tooltip is * rendered within the chart's SVG element, which results in the tooltip * being aligned inside the chart area. For small charts, this may result in * clipping or overlapping. When `true`, a separate SVG element is created * and overlaid on the page, allowing the tooltip to be aligned inside the * page itself. */ outside?: boolean; /** * (Highcharts, Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts, Highstock) The HTML of the point's line in the tooltip. * Variables are enclosed by curly brackets. Available variables are * point.x, point.y, series. name and series.color and other properties on * the same form. Furthermore, `point.y` can be extended by the * `tooltip.valuePrefix` and `tooltip.valueSuffix` variables. This can also * be overridden for each series, which makes it a good hook for displaying * units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts, Highstock) A callback function for formatting the HTML * output for a single point in the tooltip. Like the `pointFormat` string, * but with more flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts, Highstock) How many decimals to show in each series' y * value. This is overridable in each series' tooltip options object. The * default is to preserve all decimals. */ valueDecimals?: number; /** * (Highcharts, Highstock) A string to prepend to each series' y value. * Overridable in each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts, Highstock) A string to append to each series' y value. * Overridable in each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) Keyboard navigation for a series */ export interface PlotColumnrangeAccessibilityKeyboardNavigationOptions { /** * (Highcharts, Highstock) Enable/disable keyboard navigation support for a * specific series. */ enabled?: boolean; } /** * (Highcharts, Highstock) Accessibility options for a series. Requires the * accessibility module. */ export interface PlotColumnrangeAccessibilityOptions { /** * (Highcharts, Highstock) Provide a description of the series, announced to * screen readers. */ description?: string; /** * (Highcharts, Highstock) Enable/disable accessibility functionality for a * specific series. */ enabled?: boolean; /** * (Highcharts, Highstock) Expose only the series element to screen readers, * not its points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts, Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotColumnrangeAccessibilityKeyboardNavigationOptions); /** * (Highcharts, Highstock) Formatter function to use instead of the default * for point descriptions. Same as * `accessibility.pointDescriptionFormatter`, but for a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts, Highstock) Enable or disable the initial animation when a series * is displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotColumnrangeAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotColumnrangeConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotColumnrangeConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotColumnrangeConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotColumnrangeConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotColumnrangeConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotColumnrangeConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotColumnrangeConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotColumnrangeDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. Defaults to `10`. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts, Highstock) Options for the drag handles. */ export interface PlotColumnrangeDragDropDragHandleOptions { /** * (Highcharts, Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts, Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The mouse cursor to use for the drag handles. By * default this is intelligently switching between `ew-resize` and * `ns-resize` depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts, Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts, Highstock) Function to define the SVG path to use for the * drag handles. Takes the point as argument. Should return an SVG path in * array format. The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts, Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box default state. */ export interface PlotColumnrangeDragDropGuideBoxDefaultOptions { /** * (Highcharts, Highstock) CSS class name of the guide box in this state. * Defaults to `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts, Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Guide box cursor. */ cursor?: string; /** * (Highcharts, Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts, Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts, Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box. The guide box has * one state by default, the `default` state. */ export interface PlotColumnrangeDragDropGuideBoxOptions { /** * (Highcharts, Highstock) Style options for the guide box default state. */ default?: PlotColumnrangeDragDropGuideBoxDefaultOptions; } /** * (Highcharts, Highstock) The draggable-points module allows points to be moved * around or modified in the chart. In addition to the options mentioned under * the `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotColumnrangeDragDropOptions { /** * (Highcharts, Highstock) Allow high value to be dragged individually. * Requires `draggable-points` module. */ draggableHigh?: boolean; /** * (Highcharts, Highstock) Allow low value to be dragged individually. * Requires `draggable-points` module. */ draggableLow?: boolean; /** * (Highcharts, Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts, Highstock) Enable dragging in the Y dimension. Note that * this is not supported for TreeGrid axes (the default axis type in Gantt * charts). */ draggableY?: boolean; /** * (Highcharts, Highstock) Options for the drag handles. */ dragHandle?: PlotColumnrangeDragDropDragHandleOptions; /** * (Highcharts, Highstock) Set the maximum X value the points can be moved * to. */ dragMaxX?: number; /** * (Highcharts, Highstock) Set the maximum Y value the points can be moved * to. */ dragMaxY?: number; /** * (Highcharts, Highstock) Set the minimum X value the points can be moved * to. */ dragMinX?: number; /** * (Highcharts, Highstock) Set the minimum Y value the points can be moved * to. */ dragMinY?: number; /** * (Highcharts, Highstock) The X precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionX?: number; /** * (Highcharts, Highstock) The Y precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionY?: number; /** * (Highcharts, Highstock) The amount of pixels to drag the pointer before * it counts as a drag operation. This prevents drag/drop to fire when just * clicking or selecting points. */ dragSensitivity?: number; /** * (Highcharts, Highstock) Group the points by a property. Points with the * same property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts, Highstock) Style options for the guide box. The guide box * has one state by default, the `default` state. */ guideBox?: (PlotColumnrangeDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts, Highstock) Update points as they are dragged. If false, a * guide box is drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock) General event handlers for the series items. These * event hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotColumnrangeEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts, Highstock) Fires when the checkbox next to the series' name * in the legend is clicked. One parameter, `event`, is passed to the * function. The state of the checkbox is found by `event.checked`. The * checked item is found by `event.item`. Return `false` to prevent the * default action which is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is clicked. One parameter, * `event`, is passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is hidden after chart * generation time, either by clicking the legend item or by calling * `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts, Highstock) Fires when the legend item belonging to the * series is clicked. One parameter, `event`, is passed to the function. The * default action is to toggle the visibility of the series. This can be * prevented by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse leaves the graph. One * parameter, `event`, is passed to the function, containing common event * information. If the stickyTracking option is true, `mouseOut` doesn't * happen before the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse enters the graph. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is shown after chart * generation time, either by clicking the legend item or by calling * `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotColumnrangeLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotColumnrangeLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotColumnrangeLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotColumnrangeLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotColumnrangeLastVisiblePriceLabelOptions; } /** * (Highcharts, Highstock) The column range is a cartesian series type with * higher and lower Y values along an X axis. Requires `highcharts-more.js`. To * display horizontal bars, set chart.inverted to `true`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `columnrange` series are defined in * plotOptions.columnrange. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotColumnrangeOptions { /** * (Highcharts, Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotColumnrangeAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highcharts, Highstock) Allow this series' points to be selected by * clicking on the graphic (columns, point markers, pie slices, map areas * etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts, Highstock) Enable or disable the initial animation when a * series is displayed. The animation can also be set as a configuration * object. Please note that this option only applies to the initial * animation of the series itself. For other animations, see chart.animation * and the animation parameter under the API methods. The following * properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotColumnrangeAnimationOptions); /** * (Highcharts, Highstock) For some series, there is a limit that shuts down * initial animation by default when the total number of points in the chart * is too high. For example, for a column chart and its derivatives, * animation does not run if there is more than 250 points totally. To * disable this cap, set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highcharts, Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts, Highstock) Set the point threshold for when a series should * enter boost mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highcharts, Highstock, Gantt) The color of the border surrounding each * column or bar. * * In styled mode, the border stroke can be set with the `.highcharts-point` * rule. */ borderColor?: ColorString; /** * (Highcharts, Highstock, Gantt) The corner radius of the border * surrounding each column or bar. */ borderRadius?: number; /** * (Highcharts, Highstock, Gantt) The width of the border surrounding each * column or bar. Defaults to `1` when there is room for a border, but to * `0` when the columns are so dense that a border would cover the next * column. * * In styled mode, the stroke width can be set with the `.highcharts-point` * rule. */ borderWidth?: number; /** * (Highcharts, Highstock) An additional class name to apply to the series' * graphical elements. This option does not replace default class names of * the graphical element. */ className?: string; /** * (Highcharts, Highstock) Disable this option to allow series rendering in * the whole plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts, Highstock) The main color of the series. In line type series * it applies to the line and the point markers unless otherwise specified. * In bar type series it applies to the bars unless a color is specified per * point. The default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts, Highstock, Gantt) When using automatic point colors pulled * from the global colors or series-specific plotOptions.column.colors * collections, this option determines whether the chart should receive one * color per series or one color per point. * * In styled mode, the `colors` or `series.colors` arrays are not supported, * and instead this option gives the points individual color class names on * the form `highcharts-color-{n}`. */ colorByPoint?: boolean; /** * (Highcharts, Highstock) Styled mode only. A specific color index to use * for the series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) A series specific or series type specific * color set to apply instead of the global colors when colorByPoint is * true. */ colors?: Array<(ColorString|GradientColorObject|PatternObject)>; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotColumnrangeConnectorsOptions; /** * (Highcharts, Highstock, Gantt) When true, each column edge is rounded to * its nearest pixel in order to render sharp on screen. In some cases, when * there are a lot of densely packed columns, this leads to visible * difference in column widths or distance between columns. In these cases, * setting `crisp` to `false` may look better, even though each column is * rendered blurry. */ crisp?: boolean; /** * (Highcharts, Highstock, Gantt) When the series contains less points than * the crop threshold, all points are drawn, event if the points fall * outside the visible plot area at the current zoom. The advantage of * drawing all points (including markers and columns), is that animation is * performed on updates. On the other hand, when the series contains more * points than the crop threshold, the series data is cropped to only * contain points that fall within the plot area. The advantage of cropping * away invisible points is to increase performance on large series. */ cropThreshold?: number; /** * (Highcharts, Highstock) You can set the cursor to "pointer" if you have * click events attached to the series, to signal to the user that the * points and lines can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotColumnrangeDataGroupingOptions; /** * (Highcharts, Highstock) Extended data labels for range series types. * Range series data labels have no `x` and `y` options. Instead, they have * `xLow`, `xHigh`, `yLow` and `yHigh` options to allow the higher and lower * data label sets individually. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) Depth of the columns in a 3D column chart. Requires * `highcharts-3d.js`. */ depth?: number; /** * (Highcharts, Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts, Highstock) The draggable-points module allows points to be * moved around or modified in the chart. In addition to the options * mentioned under the `dragDrop` API structure, the module fires three * events, point.dragStart, point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotColumnrangeDragDropOptions; /** * (Highcharts) 3D columns only. The color of the edges. Similar to * `borderColor`, except it defaults to the same color as the column. */ edgeColor?: ColorString; /** * (Highcharts) 3D columns only. The width of the colored edges. */ edgeWidth?: number; /** * (Highcharts, Highstock) Enable or disable the mouse tracking for a * specific series. This includes point tooltips and click events on graphs * and points. For large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts, Highstock) General event handlers for the series items. * These event hooks can also be attached to the series at run time using * the `Highcharts.addEvent` function. */ events?: PlotColumnrangeEventsOptions; /** * (Highcharts, Highstock) By default, series are exposed to screen readers * as regions. By enabling this option, the series element itself will be * exposed in the same way as the data points. This is useful if the series * is not used as a grouping entity in the chart, but you still want to * attach a description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highcharts, Highstock) Determines whether the series should look for the * nearest point in both dimensions or just the x-dimension when hovering * the series. Defaults to `'xy'` for scatter series and `'x'` for most * other series. If the data has duplicate x-values, it is recommended to * set this to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highcharts, Highstock, Gantt) Whether to group non-stacked columns or to * let them render independent of each other. Non-grouped columns will be * laid out individually and overlap each other. */ grouping?: boolean; /** * (Highcharts, Highstock, Gantt) Padding between each value groups, in x * axis units. */ groupPadding?: number; /** * (Highcharts) The spacing between columns on the Z Axis in a 3D chart. * Requires `highcharts-3d.js`. */ groupZPadding?: number; /** * (Highcharts, Highstock) Export-data module required. When set to `false` * will prevent the series data from being included in any form of data * export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts, Highstock) An array specifying which option maps to which * key in the data point array. This makes it convenient to work with * unstructured data arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotColumnrangeLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotColumnrangeLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotColumnrangeLastVisiblePriceOptions; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts, Highstock, Gantt) The maximum allowed pixel width for a * column, translated to the height of a bar in a bar chart. This prevents * the columns from becoming too wide when there is a small number of points * in the chart. */ maxPointWidth?: number; /** * (Highcharts, Highstock, Gantt) The minimal height for a column or width * for a bar. By default, 0 values are not shown. To visualize a 0 (or close * to zero) point, set the minimal point length to a pixel value like 3\. In * stacked column charts, minPointLength might not be respected for tightly * packed values. */ minPointLength?: number; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts, Highstock) Opacity of a series parts: line, fill (e.g. area) * and dataLabels. */ opacity?: number; /** * (Highcharts, Highstock) Properties for each single point. */ point?: PlotColumnrangePointOptions; /** * (Highcharts, Highstock) Same as accessibility.pointDescriptionFormatter, * but for an individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, `pointInterval` defines the interval of the x values. For * example, if a series contains one value every decade starting from year * 0, set `pointInterval` to `10`. In true `datetime` axes, the * `pointInterval` is set in milliseconds. * * It can be also be combined with `pointIntervalUnit` to draw irregular * time intervals. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointInterval?: number; /** * (Highcharts, Highstock, Gantt) On datetime series, this allows for * setting the pointInterval to irregular time units, `day`, `month` and * `year`. A day is usually the same as 24 hours, but `pointIntervalUnit` * also takes the DST crossover into consideration when dealing with local * time. Combine this option with `pointInterval` to draw weeks, quarters, 6 * months, 10 years etc. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointIntervalUnit?: OptionsPointIntervalUnitValue; /** * (Highcharts, Highstock, Gantt) Padding between each column or bar, in x * axis units. */ pointPadding?: number; /** * (Highcharts, Highstock, Gantt) Possible values: `"on"`, `"between"`, * `number`. * * In a column chart, when pointPlacement is `"on"`, the point will not * create any padding of the X axis. In a polar column chart this means that * the first column points directly north. If the pointPlacement is * `"between"`, the columns will be laid out between ticks. This is useful * for example for visualising an amount between two points in time or in a * certain sector of a polar chart. * * Since Highcharts 3.0.2, the point placement can also be numeric, where 0 * is on the axis value, -0.5 is between this value and the previous, and * 0.5 is between this value and the next. Unlike the textual options, * numeric point placement options won't affect axis padding. * * Note that pointPlacement needs a pointRange to work. For column series * this is computed, but for line-type series it needs to be set. * * For the `xrange` series type and gantt charts, if the Y axis is a * category axis, the `pointPlacement` applies to the Y axis rather than the * (typically datetime) X axis. * * Defaults to `undefined` in cartesian charts, `"between"` in polar charts. */ pointPlacement?: (number|string); /** * (Highcharts, Highstock, Gantt) The X axis range that each point is valid * for. This determines the width of the column. On a categorized axis, the * range will be 1 by default (one category unit). On linear and datetime * axes, the range will be computed as the distance between the two closest * data points. * * The default `null` means it is computed automatically, but this option * can be used to override the automatic value. */ pointRange?: any; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, pointStart defines on what value to start. For example, if a * series contains one yearly value starting from 1945, set pointStart to * 1945. */ pointStart?: number; /** * (Highcharts, Highstock, Gantt) A pixel value specifying a fixed width for * each column or bar. When `null`, the width is calculated from the * `pointPadding` and `groupPadding`. */ pointWidth?: number; /** * (Highcharts, Highstock) Whether to select the series initially. If * `showCheckbox` is true, the checkbox next to the series name in the * legend will be checked for a selected series. */ selected?: boolean; /** * (Highcharts, Highstock) Whether to apply a drop shadow to the graph line. * Since 2.3 the shadow can be an object configuration containing `color`, * `offsetX`, `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highcharts, Highstock) If true, a checkbox is displayed next to the * legend item to allow selecting the series. The state of the checkbox is * determined by the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts, Highstock) Whether to display this particular series or * series type in the legend. The default value is `true` for standalone * series, `false` for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts, Highstock) If set to `true`, the accessibility module will * skip past the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; states?: PlotColumnrangeStatesOptions; /** * (Highcharts, Highstock) Sticky tracking of mouse events. When true, the * `mouseOut` event on a series isn't triggered until the mouse moves over * another series, or out of the plot area. When false, the `mouseOut` event * on a series is triggered when the mouse leaves the area around the * series' graph or markers. This also implies the tooltip when not shared. * When `stickyTracking` is false and `tooltip.shared` is false, the tooltip * will be hidden when moving the mouse between series. Defaults to true for * line and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) A configuration object for the tooltip rendering * of each single series. Properties are inherited from tooltip, but only * the following properties can be defined on a series level. */ tooltip?: PlotColumnrangeTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highcharts, Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotColumnrangeZonesOptions>; } /** * (Highcharts, Highstock) Events for each single point. */ export interface PlotColumnrangePointEventsOptions { /** * (Highcharts, Highstock) Fires when a point is clicked. One parameter, * `event`, is passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock) Callback that fires while dragging a point. The * mouse event is passed in as parameter. The original data can be accessed * from `e.origin`, and the new point values can be accessed from * `e.newPoints`. If there is only a single point being updated, it can be * accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock) Callback that fires when starting to drag a * point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock) Callback that fires when the point is dropped. * The parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse leaves the area close to the * point. One parameter, `event`, is passed to the function, containing * common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse enters the area close to the * point. One parameter, `event`, is passed to the function, containing * common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is updated programmatically * through the `.update()` method. One parameter, `event`, is passed to the * function. The new point options can be accessed through `event.options`. * Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts, Highstock) Properties for each single point. */ export interface PlotColumnrangePointOptions { /** * (Highcharts, Highstock) Events for each single point. */ events?: PlotColumnrangePointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotColumnrangeStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock, Gantt) Options for the hovered point. These settings * override the normal state options when a point is moused over or touched. */ export interface PlotColumnrangeStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotColumnrangeStatesHoverAnimationOptions); /** * (Highcharts, Gantt) A specific border color for the hovered point. * Defaults to inherit the normal state border color. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) How much to brighten the point on * interaction. Requires the main color to be defined in hex or rgb(a) * format. * * In styled mode, the hover brightening is by default replaced with a * fill-opacity set in the `.highcharts-point:hover` rule. */ brightness?: number; /** * (Highcharts, Gantt) A specific color for the hovered point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) Enable separate styles for the hovered * series to visualize that the user hovers either the series itself or the * legend. */ enabled?: boolean; } export interface PlotColumnrangeStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The opposite state of a hover for series. */ export interface PlotColumnrangeStatesInactiveOptions { animation?: PlotColumnrangeStatesInactiveAnimationOptions; /** * (Highcharts, Highstock) Opacity of series elements (dataLabels, line, * area). */ opacity?: number; } /** * (Highcharts, Highstock) The normal state of a series, or for point items in * column, pie and similar series. Currently only used for setting animation * when returning to normal state from hover. */ export interface PlotColumnrangeStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotColumnrangeStatesOptions { /** * (Highcharts, Highstock, Gantt) Options for the hovered point. These * settings override the normal state options when a point is moused over or * touched. */ hover?: PlotColumnrangeStatesHoverOptions; /** * (Highcharts, Highstock) The opposite state of a hover for series. */ inactive?: PlotColumnrangeStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a series, or for point items * in column, pie and similar series. Currently only used for setting * animation when returning to normal state from hover. */ normal?: PlotColumnrangeStatesNormalOptions; /** * (Highcharts, Highstock, Gantt) Options for the selected point. These * settings override the normal state options when a point is selected. */ select?: PlotColumnrangeStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotColumnrangeStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock, Gantt) Options for the selected point. These settings * override the normal state options when a point is selected. */ export interface PlotColumnrangeStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotColumnrangeStatesSelectAnimationOptions; /** * (Highcharts, Highstock, Gantt) A specific border color for the selected * point. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) A specific color for the selected point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) Enable separate styles for the hovered * series to visualize that the user hovers either the series itself or the * legend. */ enabled?: boolean; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotColumnrangeTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts, Highstock) A configuration object for the tooltip rendering of * each single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ export interface PlotColumnrangeTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotColumnrangeTooltipDateTimeLabelFormatsOptions|Dictionary<string>); distance?: number; /** * (Highcharts, Highstock) Whether the tooltip should follow the mouse as it * moves across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts, Highstock) Whether the tooltip should update as the finger * moves on a touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts, Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts, Highstock) The HTML of the tooltip header line. Variables * are enclosed by curly brackets. Available variables are `point.key`, * `series.name`, `series.color` and other members from the `point` and * `series` objects. The `point.key` variable contains the category name, x * value or datetime string depending on the type of axis. For datetime * axes, the `point.key` date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts, Highstock) The name of a symbol to use for the border around * the tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts, Highstock) The number of milliseconds to wait until the * tooltip is hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts, Highstock) The HTML of the null point's line in the tooltip. * Works analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts, Highstock) Callback function to format the text of the * tooltip for visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts, Highstock) Whether to allow the tooltip to render outside * the chart's SVG element box. By default (`false`), the tooltip is * rendered within the chart's SVG element, which results in the tooltip * being aligned inside the chart area. For small charts, this may result in * clipping or overlapping. When `true`, a separate SVG element is created * and overlaid on the page, allowing the tooltip to be aligned inside the * page itself. */ outside?: boolean; /** * (Highcharts, Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts, Highstock) The HTML of the point's line in the tooltip. * Variables are enclosed by curly brackets. Available variables are * point.x, point.y, series. name and series.color and other properties on * the same form. Furthermore, `point.y` can be extended by the * `tooltip.valuePrefix` and `tooltip.valueSuffix` variables. This can also * be overridden for each series, which makes it a good hook for displaying * units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts, Highstock) A callback function for formatting the HTML * output for a single point in the tooltip. Like the `pointFormat` string, * but with more flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts, Highstock) How many decimals to show in each series' y * value. This is overridable in each series' tooltip options object. The * default is to preserve all decimals. */ valueDecimals?: number; /** * (Highcharts, Highstock) A string to prepend to each series' y value. * Overridable in each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts, Highstock) A string to append to each series' y value. * Overridable in each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotColumnrangeZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotColumnStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock, Gantt) Options for the hovered point. These settings * override the normal state options when a point is moused over or touched. */ export interface PlotColumnStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotColumnStatesHoverAnimationOptions); /** * (Highcharts, Gantt) A specific border color for the hovered point. * Defaults to inherit the normal state border color. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) How much to brighten the point on * interaction. Requires the main color to be defined in hex or rgb(a) * format. * * In styled mode, the hover brightening is by default replaced with a * fill-opacity set in the `.highcharts-point:hover` rule. */ brightness?: number; /** * (Highcharts, Gantt) A specific color for the hovered point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) Enable separate styles for the hovered * series to visualize that the user hovers either the series itself or the * legend. */ enabled?: boolean; } export interface PlotColumnStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The opposite state of a hover for series. */ export interface PlotColumnStatesInactiveOptions { animation?: PlotColumnStatesInactiveAnimationOptions; /** * (Highcharts, Highstock) Opacity of series elements (dataLabels, line, * area). */ opacity?: number; } /** * (Highcharts, Highstock) The normal state of a series, or for point items in * column, pie and similar series. Currently only used for setting animation * when returning to normal state from hover. */ export interface PlotColumnStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotColumnStatesOptions { /** * (Highcharts, Highstock, Gantt) Options for the hovered point. These * settings override the normal state options when a point is moused over or * touched. */ hover?: PlotColumnStatesHoverOptions; /** * (Highcharts, Highstock) The opposite state of a hover for series. */ inactive?: PlotColumnStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a series, or for point items * in column, pie and similar series. Currently only used for setting * animation when returning to normal state from hover. */ normal?: PlotColumnStatesNormalOptions; /** * (Highcharts, Highstock, Gantt) Options for the selected point. These * settings override the normal state options when a point is selected. */ select?: PlotColumnStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotColumnStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock, Gantt) Options for the selected point. These settings * override the normal state options when a point is selected. */ export interface PlotColumnStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotColumnStatesSelectAnimationOptions; /** * (Highcharts, Highstock, Gantt) A specific border color for the selected * point. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) A specific color for the selected point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) Enable separate styles for the hovered * series to visualize that the user hovers either the series itself or the * legend. */ enabled?: boolean; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotColumnTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts, Highstock) A configuration object for the tooltip rendering of * each single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ export interface PlotColumnTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotColumnTooltipDateTimeLabelFormatsOptions|Dictionary<string>); distance?: number; /** * (Highcharts, Highstock) Whether the tooltip should follow the mouse as it * moves across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts, Highstock) Whether the tooltip should update as the finger * moves on a touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts, Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts, Highstock) The HTML of the tooltip header line. Variables * are enclosed by curly brackets. Available variables are `point.key`, * `series.name`, `series.color` and other members from the `point` and * `series` objects. The `point.key` variable contains the category name, x * value or datetime string depending on the type of axis. For datetime * axes, the `point.key` date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts, Highstock) The name of a symbol to use for the border around * the tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts, Highstock) The number of milliseconds to wait until the * tooltip is hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts, Highstock) The HTML of the null point's line in the tooltip. * Works analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts, Highstock) Callback function to format the text of the * tooltip for visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts, Highstock) Whether to allow the tooltip to render outside * the chart's SVG element box. By default (`false`), the tooltip is * rendered within the chart's SVG element, which results in the tooltip * being aligned inside the chart area. For small charts, this may result in * clipping or overlapping. When `true`, a separate SVG element is created * and overlaid on the page, allowing the tooltip to be aligned inside the * page itself. */ outside?: boolean; /** * (Highcharts, Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts, Highstock) The HTML of the point's line in the tooltip. * Variables are enclosed by curly brackets. Available variables are * point.x, point.y, series. name and series.color and other properties on * the same form. Furthermore, `point.y` can be extended by the * `tooltip.valuePrefix` and `tooltip.valueSuffix` variables. This can also * be overridden for each series, which makes it a good hook for displaying * units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts, Highstock) A callback function for formatting the HTML * output for a single point in the tooltip. Like the `pointFormat` string, * but with more flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts, Highstock) How many decimals to show in each series' y * value. This is overridable in each series' tooltip options object. The * default is to preserve all decimals. */ valueDecimals?: number; /** * (Highcharts, Highstock) A string to prepend to each series' y value. * Overridable in each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts, Highstock) A string to append to each series' y value. * Overridable in each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotColumnZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts) Keyboard navigation for a series */ export interface PlotCylinderAccessibilityKeyboardNavigationOptions { /** * (Highcharts) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highcharts) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotCylinderAccessibilityOptions { /** * (Highcharts) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highcharts) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highcharts) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotCylinderAccessibilityKeyboardNavigationOptions); /** * (Highcharts) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotCylinderAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotCylinderConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotCylinderConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotCylinderConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotCylinderConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotCylinderConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotCylinderConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotCylinderConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotCylinderDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. Defaults to `10`. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts) Options for the drag handles. */ export interface PlotCylinderDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface PlotCylinderDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotCylinderDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: PlotCylinderDragDropGuideBoxDefaultOptions; } /** * (Highcharts) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotCylinderDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: PlotCylinderDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotCylinderDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotCylinderEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotCylinderLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotCylinderLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotCylinderLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotCylinderLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotCylinderLastVisiblePriceLabelOptions; } /** * (Highcharts) A cylinder graph is a variation of a 3d column graph. The * cylinder graph features cylindrical points. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `cylinder` series are defined in plotOptions.cylinder. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotCylinderOptions { /** * (Highcharts) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotCylinderAccessibilityOptions); /** * (Highcharts) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotCylinderAnimationOptions); /** * (Highcharts) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highcharts) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts, Highstock, Gantt) The color of the border surrounding each * column or bar. * * In styled mode, the border stroke can be set with the `.highcharts-point` * rule. */ borderColor?: ColorString; /** * (Highcharts, Highstock, Gantt) The corner radius of the border * surrounding each column or bar. */ borderRadius?: number; /** * (Highcharts, Highstock, Gantt) The width of the border surrounding each * column or bar. Defaults to `1` when there is room for a border, but to * `0` when the columns are so dense that a border would cover the next * column. * * In styled mode, the stroke width can be set with the `.highcharts-point` * rule. */ borderWidth?: number; /** * (Highcharts) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highcharts) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) When using automatic point colors pulled * from the global colors or series-specific plotOptions.column.colors * collections, this option determines whether the chart should receive one * color per series or one color per point. * * In styled mode, the `colors` or `series.colors` arrays are not supported, * and instead this option gives the points individual color class names on * the form `highcharts-color-{n}`. */ colorByPoint?: boolean; /** * (Highcharts) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) A series specific or series type specific * color set to apply instead of the global colors when colorByPoint is * true. */ colors?: Array<(ColorString|GradientColorObject|PatternObject)>; /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotCylinderConnectorsOptions; /** * (Highcharts, Highstock, Gantt) When true, each column edge is rounded to * its nearest pixel in order to render sharp on screen. In some cases, when * there are a lot of densely packed columns, this leads to visible * difference in column widths or distance between columns. In these cases, * setting `crisp` to `false` may look better, even though each column is * rendered blurry. */ crisp?: boolean; /** * (Highcharts, Highstock, Gantt) When the series contains less points than * the crop threshold, all points are drawn, event if the points fall * outside the visible plot area at the current zoom. The advantage of * drawing all points (including markers and columns), is that animation is * performed on updates. On the other hand, when the series contains more * points than the crop threshold, the series data is cropped to only * contain points that fall within the plot area. The advantage of cropping * away invisible points is to increase performance on large series. */ cropThreshold?: number; /** * (Highcharts) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotCylinderDataGroupingOptions; /** * (Highcharts) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) Depth of the columns in a 3D column chart. Requires * `highcharts-3d.js`. */ depth?: number; /** * (Highcharts) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotCylinderDragDropOptions; /** * (Highcharts) 3D columns only. The color of the edges. Similar to * `borderColor`, except it defaults to the same color as the column. */ edgeColor?: ColorString; /** * (Highcharts) 3D columns only. The width of the colored edges. */ edgeWidth?: number; /** * (Highcharts) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotCylinderEventsOptions; /** * (Highcharts) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highcharts) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highcharts, Highstock, Gantt) Whether to group non-stacked columns or to * let them render independent of each other. Non-grouped columns will be * laid out individually and overlap each other. */ grouping?: boolean; /** * (Highcharts, Highstock, Gantt) Padding between each value groups, in x * axis units. */ groupPadding?: number; /** * (Highcharts) The spacing between columns on the Z Axis in a 3D chart. * Requires `highcharts-3d.js`. */ groupZPadding?: number; /** * (Highcharts) Export-data module required. When set to `false` will * prevent the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts) An array specifying which option maps to which key in the * data point array. This makes it convenient to work with unstructured data * arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotCylinderLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotCylinderLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotCylinderLastVisiblePriceOptions; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts, Highstock, Gantt) The maximum allowed pixel width for a * column, translated to the height of a bar in a bar chart. This prevents * the columns from becoming too wide when there is a small number of points * in the chart. */ maxPointWidth?: number; /** * (Highcharts, Highstock, Gantt) The minimal height for a column or width * for a bar. By default, 0 values are not shown. To visualize a 0 (or close * to zero) point, set the minimal point length to a pixel value like 3\. In * stacked column charts, minPointLength might not be respected for tightly * packed values. */ minPointLength?: number; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts) The color for the parts of the graph or points that are * below the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highcharts) Properties for each single point. */ point?: PlotCylinderPointOptions; /** * (Highcharts) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, `pointInterval` defines the interval of the x values. For * example, if a series contains one value every decade starting from year * 0, set `pointInterval` to `10`. In true `datetime` axes, the * `pointInterval` is set in milliseconds. * * It can be also be combined with `pointIntervalUnit` to draw irregular * time intervals. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointInterval?: number; /** * (Highcharts, Highstock, Gantt) On datetime series, this allows for * setting the pointInterval to irregular time units, `day`, `month` and * `year`. A day is usually the same as 24 hours, but `pointIntervalUnit` * also takes the DST crossover into consideration when dealing with local * time. Combine this option with `pointInterval` to draw weeks, quarters, 6 * months, 10 years etc. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointIntervalUnit?: OptionsPointIntervalUnitValue; /** * (Highcharts, Highstock, Gantt) Padding between each column or bar, in x * axis units. */ pointPadding?: number; /** * (Highcharts, Highstock, Gantt) Possible values: `"on"`, `"between"`, * `number`. * * In a column chart, when pointPlacement is `"on"`, the point will not * create any padding of the X axis. In a polar column chart this means that * the first column points directly north. If the pointPlacement is * `"between"`, the columns will be laid out between ticks. This is useful * for example for visualising an amount between two points in time or in a * certain sector of a polar chart. * * Since Highcharts 3.0.2, the point placement can also be numeric, where 0 * is on the axis value, -0.5 is between this value and the previous, and * 0.5 is between this value and the next. Unlike the textual options, * numeric point placement options won't affect axis padding. * * Note that pointPlacement needs a pointRange to work. For column series * this is computed, but for line-type series it needs to be set. * * For the `xrange` series type and gantt charts, if the Y axis is a * category axis, the `pointPlacement` applies to the Y axis rather than the * (typically datetime) X axis. * * Defaults to `undefined` in cartesian charts, `"between"` in polar charts. */ pointPlacement?: (number|string); /** * (Highcharts, Highstock, Gantt) The X axis range that each point is valid * for. This determines the width of the column. On a categorized axis, the * range will be 1 by default (one category unit). On linear and datetime * axes, the range will be computed as the distance between the two closest * data points. * * The default `null` means it is computed automatically, but this option * can be used to override the automatic value. */ pointRange?: (number|null); /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, pointStart defines on what value to start. For example, if a * series contains one yearly value starting from 1945, set pointStart to * 1945. */ pointStart?: number; /** * (Highcharts, Highstock, Gantt) A pixel value specifying a fixed width for * each column or bar. When `null`, the width is calculated from the * `pointPadding` and `groupPadding`. */ pointWidth?: number; /** * (Highcharts) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highcharts) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highcharts) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts) If set to `true`, the accessibility module will skip past * the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; /** * (Highcharts, Highstock) Whether to stack the values of each series on top * of each other. Possible values are `undefined` to disable, `"normal"` to * stack by value or `"percent"`. When stacking is enabled, data must be * sorted in ascending X order. A special stacking option is with the * streamgraph series type, where the stacking option is set to `"stream"`. * The second one is `"overlap"`, which only applies to waterfall series. */ stacking?: OptionsStackingValue; states?: PlotCylinderStatesOptions; /** * (Highcharts) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts) The Y axis value to serve as the base for the columns, for * distinguishing between values above and below a threshold. If `null`, the * columns extend from the padding Y axis minimum. */ threshold?: number; /** * (Highcharts) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotCylinderTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highcharts) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotCylinderZonesOptions>; } /** * (Highcharts) Events for each single point. */ export interface PlotCylinderPointEventsOptions { /** * (Highcharts) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts) Callback that fires when the point is dropped. The * parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts) Fires when the point is removed using the `.remove()` * method. One parameter, `event`, is passed to the function. Returning * `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts) Fires when the point is unselected either programmatically * or following a click on the point. One parameter, `event`, is passed to * the function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) Properties for each single point. */ export interface PlotCylinderPointOptions { /** * (Highcharts) Events for each single point. */ events?: PlotCylinderPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotCylinderStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock, Gantt) Options for the hovered point. These settings * override the normal state options when a point is moused over or touched. */ export interface PlotCylinderStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotCylinderStatesHoverAnimationOptions); /** * (Highcharts, Gantt) A specific border color for the hovered point. * Defaults to inherit the normal state border color. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) How much to brighten the point on * interaction. Requires the main color to be defined in hex or rgb(a) * format. * * In styled mode, the hover brightening is by default replaced with a * fill-opacity set in the `.highcharts-point:hover` rule. */ brightness?: number; /** * (Highcharts, Gantt) A specific color for the hovered point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) Enable separate styles for the hovered * series to visualize that the user hovers either the series itself or the * legend. */ enabled?: boolean; } export interface PlotCylinderStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts) The opposite state of a hover for series. */ export interface PlotCylinderStatesInactiveOptions { animation?: PlotCylinderStatesInactiveAnimationOptions; /** * (Highcharts) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highcharts) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotCylinderStatesNormalOptions { /** * (Highcharts) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotCylinderStatesOptions { /** * (Highcharts, Highstock, Gantt) Options for the hovered point. These * settings override the normal state options when a point is moused over or * touched. */ hover?: PlotCylinderStatesHoverOptions; /** * (Highcharts) The opposite state of a hover for series. */ inactive?: PlotCylinderStatesInactiveOptions; /** * (Highcharts) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotCylinderStatesNormalOptions; /** * (Highcharts, Highstock, Gantt) Options for the selected point. These * settings override the normal state options when a point is selected. */ select?: PlotCylinderStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotCylinderStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock, Gantt) Options for the selected point. These settings * override the normal state options when a point is selected. */ export interface PlotCylinderStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotCylinderStatesSelectAnimationOptions; /** * (Highcharts, Highstock, Gantt) A specific border color for the selected * point. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) A specific color for the selected point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) Enable separate styles for the hovered * series to visualize that the user hovers either the series itself or the * legend. */ enabled?: boolean; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotCylinderTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotCylinderTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotCylinderTooltipDateTimeLabelFormatsOptions|Dictionary<string>); distance?: number; /** * (Highcharts) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts) The name of a symbol to use for the border around the * tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highcharts) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts) How many decimals to show in each series' y value. This is * overridable in each series' tooltip options object. The default is to * preserve all decimals. */ valueDecimals?: number; /** * (Highcharts) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotCylinderZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotDemaAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotDemaAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotDemaAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotDemaAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotDemaConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotDemaConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotDemaConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotDemaConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotDemaConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotDemaConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotDemaConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotDemaDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotDemaDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotDemaDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotDemaDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotDemaDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotDemaDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotDemaDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotDemaDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotDemaEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotDemaLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotDemaLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotDemaLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotDemaLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotDemaLastVisiblePriceLabelOptions; } /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotDemaMarkerOptions { /** * (Highstock) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highstock) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highstock) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. */ radius?: number; /** * (Highstock) States for a single point marker. */ states?: PlotDemaMarkerStatesOptions; /** * (Highstock) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highstock) Animation when hovering over the marker. */ export interface PlotDemaMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highstock) The hover state for a single point marker. */ export interface PlotDemaMarkerStatesHoverOptions { /** * (Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotDemaMarkerStatesHoverAnimationOptions); /** * (Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highstock) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotDemaMarkerStatesInactiveOptions { /** * (Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highstock) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotDemaMarkerStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highstock) States for a single point marker. */ export interface PlotDemaMarkerStatesOptions { /** * (Highstock) The hover state for a single point marker. */ hover?: PlotDemaMarkerStatesHoverOptions; inactive?: PlotDemaMarkerStatesInactiveOptions; /** * (Highstock) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotDemaMarkerStatesNormalOptions; /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotDemaMarkerStatesSelectOptions; } /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotDemaMarkerStatesSelectOptions { /** * (Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Normalized average true range indicator (NATR). This series * requires `linkedTo` option to be set and should be loaded after the * `stock/indicators/indicators.js` and `stock/indicators/ema.js`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `dema` series are defined in plotOptions.dema. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotDemaOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotDemaAccessibilityOptions); /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotDemaAnimationOptions); /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highstock) Whether to compare indicator to the main series values or * indicator values. */ compareToMain?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotDemaConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotDemaDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotDemaDragDropOptions; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotDemaEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotDemaLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotDemaLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotDemaLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The main series ID that indicator will be * based on. Required for this indicator. */ linkedTo?: string; /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotDemaMarkerOptions; /** * (Highstock) The name of the series as shown in the legend, tooltip etc. * If not set, it will be based on a technical indicator type and default * params. */ name?: string; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Paramters used in calculation of regression series' points. */ params?: PlotDemaParamsOptions; /** * (Highstock) Properties for each single point. */ point?: PlotDemaPointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotDemaStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotDemaTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotDemaZonesOptions>; } /** * (Highstock) Paramters used in calculation of regression series' points. */ export interface PlotDemaParamsOptions { /** * (Highstock) The point index which indicator calculations will base. For * example using OHLC data, index=2 means the indicator will be calculated * using Low values. * * By default index value used to be set to 0. Since Highstock 7 by default * index is set to 3 which means that the ema indicator will be calculated * using Close values. */ index?: number; /** * (Highstock) The base period for indicator calculations. This is the * number of data points which are taken into account for the indicator * calculations. */ period?: number; } /** * (Highstock) Events for each single point. */ export interface PlotDemaPointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotDemaPointOptions { /** * (Highstock) Events for each single point. */ events?: PlotDemaPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotDemaStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotDemaStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotDemaStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotDemaStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotDemaStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotDemaStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotDemaStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotDemaStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotDemaStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotDemaStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotDemaStatesHoverMarkerStatesHoverOptions; inactive?: PlotDemaStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotDemaStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotDemaStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotDemaStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotDemaStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotDemaStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotDemaStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotDemaStatesHoverMarkerOptions; } export interface PlotDemaStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotDemaStatesInactiveOptions { animation?: PlotDemaStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotDemaStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotDemaStatesOptions { /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotDemaStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotDemaStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotDemaStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotDemaStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotDemaStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotDemaStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotDemaStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotDemaStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotDemaStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotDemaStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotDemaStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotDemaStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotDemaStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotDemaStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotDemaStatesSelectMarkerStatesHoverOptions; inactive?: PlotDemaStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotDemaStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotDemaStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotDemaStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotDemaStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotDemaStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotDemaStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotDemaStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotDemaTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotDemaTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotDemaTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) Number of decimals in indicator series. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotDemaZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts) Keyboard navigation for a series */ export interface PlotDependencywheelAccessibilityKeyboardNavigationOptions { /** * (Highcharts) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highcharts) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotDependencywheelAccessibilityOptions { /** * (Highcharts) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highcharts) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highcharts) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotDependencywheelAccessibilityKeyboardNavigationOptions); /** * (Highcharts) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotDependencywheelAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotDependencywheelConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotDependencywheelConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotDependencywheelConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotDependencywheelConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotDependencywheelConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotDependencywheelConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotDependencywheelConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotDependencywheelDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. Defaults to `10`. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts) Options for the drag handles. */ export interface PlotDependencywheelDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface PlotDependencywheelDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotDependencywheelDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: PlotDependencywheelDragDropGuideBoxDefaultOptions; } /** * (Highcharts) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotDependencywheelDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: PlotDependencywheelDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotDependencywheelDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotDependencywheelEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotDependencywheelLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotDependencywheelLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotDependencywheelLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotDependencywheelLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotDependencywheelLastVisiblePriceLabelOptions; } /** * (Highcharts) Set options on specific levels. Takes precedence over series * options, but not point options. */ export interface PlotDependencywheelLevelsOptions { /** * (Highcharts) Can set `borderColor` on all points which lies on the same * level. */ borderColor?: ColorString; /** * (Highcharts) Can set `borderWidth` on all points which lies on the same * level. */ borderWidth?: number; /** * (Highcharts) Can set `color` on all points which lies on the same level. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Can set `colorByPoint` on all points which lies on the same * level. */ colorByPoint?: boolean; /** * (Highcharts) Can set `dataLabels` on all points which lies on the same * level. */ dataLabels?: object; /** * (Highcharts) Decides which level takes effect from the options set in the * levels object. */ level?: number; /** * (Highcharts) Can set `linkOpacity` on all points which lies on the same * level. */ linkOpacity?: number; /** * (Highcharts) Can set `states` on all points which lies on the same level. */ states?: object; } /** * (Highcharts) A dependency wheel chart is a type of flow diagram, where all * nodes are laid out in a circle, and the flow between the are drawn as link * bands. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `dependencywheel` series are defined in * plotOptions.dependencywheel. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotDependencywheelOptions { /** * (Highcharts) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotDependencywheelAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highcharts) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotDependencywheelAnimationOptions); /** * (Highcharts) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts, Highstock, Gantt) The color of the border surrounding each * column or bar. * * In styled mode, the border stroke can be set with the `.highcharts-point` * rule. */ borderColor?: ColorString; /** * (Highcharts, Highstock, Gantt) The width of the border surrounding each * column or bar. Defaults to `1` when there is room for a border, but to * `0` when the columns are so dense that a border would cover the next * column. * * In styled mode, the stroke width can be set with the `.highcharts-point` * rule. */ borderWidth?: number; /** * (Highcharts) The center of the wheel relative to the plot area. Can be * percentages or pixel values. The default behaviour is to center the wheel * inside the plot area. */ center?: Array<(number|string|null)>; /** * (Highcharts) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highcharts) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts, Highstock, Gantt) When using automatic point colors pulled * from the global colors or series-specific plotOptions.column.colors * collections, this option determines whether the chart should receive one * color per series or one color per point. * * In styled mode, the `colors` or `series.colors` arrays are not supported, * and instead this option gives the points individual color class names on * the form `highcharts-color-{n}`. */ colorByPoint?: boolean; /** * (Highcharts) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) A series specific or series type specific * color set to apply instead of the global colors when colorByPoint is * true. */ colors?: Array<(ColorString|GradientColorObject|PatternObject)>; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotDependencywheelConnectorsOptions; /** * (Highcharts) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highcharts) Higher numbers makes the links in a sankey diagram or * dependency wheelrender more curved. A `curveFactor` of 0 makes the lines * straight. */ curveFactor?: number; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotDependencywheelDataGroupingOptions; /** * (Highcharts) Options for the data labels appearing on top of the nodes * and links. For sankey charts, data labels are visible for the nodes by * default, but hidden for links. This is controlled by modifying the * `nodeFormat`, and the `format` that applies to links and is an empty * string by default. */ dataLabels?: (DataLabelsOptionsObject|PlotSankeyDataLabelsOptionsObject); /** * (Highcharts) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotDependencywheelDragDropOptions; /** * (Highcharts) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotDependencywheelEventsOptions; /** * (Highcharts) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highcharts) Export-data module required. When set to `false` will * prevent the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts) An array specifying which option maps to which key in the * data point array. This makes it convenient to work with unstructured data * arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotDependencywheelLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotDependencywheelLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotDependencywheelLastVisiblePriceOptions; /** * (Highcharts) Set options on specific levels. Takes precedence over series * options, but not point options. */ levels?: Array<PlotDependencywheelLevelsOptions>; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts) Opacity for the links between nodes in the sankey diagram. */ linkOpacity?: number; /** * (Highcharts, Highstock, Gantt) The minimal height for a column or width * for a bar. By default, 0 values are not shown. To visualize a 0 (or close * to zero) point, set the minimal point length to a pixel value like 3\. In * stacked column charts, minPointLength might not be respected for tightly * packed values. */ minPointLength?: number; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts) The padding between nodes in a sankey diagram or dependency * wheel, in pixels. */ nodePadding?: number; /** * (Highcharts) The pixel width of each node in a sankey diagram or * dependency wheel, or the height in case the chart is inverted. */ nodeWidth?: number; /** * (Highcharts) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highcharts) Properties for each single point. */ point?: PlotDependencywheelPointOptions; /** * (Highcharts) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highcharts) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts) If set to `true`, the accessibility module will skip past * the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts) The start angle of the dependency wheel, in degrees where 0 * is up. */ startAngle?: number; states?: PlotDependencywheelStatesOptions; /** * (Highcharts) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotDependencywheelTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highcharts) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; } /** * (Highcharts) Events for each single point. */ export interface PlotDependencywheelPointEventsOptions { /** * (Highcharts) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts) Callback that fires when the point is dropped. The * parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts) Fires when the point is removed using the `.remove()` * method. One parameter, `event`, is passed to the function. Returning * `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts) Fires when the point is unselected either programmatically * or following a click on the point. One parameter, `event`, is passed to * the function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) Properties for each single point. */ export interface PlotDependencywheelPointOptions { /** * (Highcharts) Events for each single point. */ events?: PlotDependencywheelPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotDependencywheelStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock, Gantt) Options for the hovered point. These settings * override the normal state options when a point is moused over or touched. */ export interface PlotDependencywheelStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotDependencywheelStatesHoverAnimationOptions); /** * (Highcharts, Gantt) A specific border color for the hovered point. * Defaults to inherit the normal state border color. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) How much to brighten the point on * interaction. Requires the main color to be defined in hex or rgb(a) * format. * * In styled mode, the hover brightening is by default replaced with a * fill-opacity set in the `.highcharts-point:hover` rule. */ brightness?: number; /** * (Highcharts, Gantt) A specific color for the hovered point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) Enable separate styles for the hovered * series to visualize that the user hovers either the series itself or the * legend. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) Opacity for the links between nodes in the * sankey diagram in hover mode. */ linkOpacity?: number; } /** * (Highcharts) Animation when not hovering over the marker. */ export interface PlotDependencywheelStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts) The opposite state of a hover for a single point node/link. */ export interface PlotDependencywheelStatesInactiveOptions { /** * (Highcharts) Animation when not hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotDependencywheelStatesInactiveAnimationOptions); /** * (Highcharts) Opacity for the links between nodes in the sankey diagram in * inactive mode. */ linkOpacity?: number; /** * (Highcharts) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highcharts) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotDependencywheelStatesNormalOptions { /** * (Highcharts) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotDependencywheelStatesOptions { /** * (Highcharts, Highstock, Gantt) Options for the hovered point. These * settings override the normal state options when a point is moused over or * touched. */ hover?: PlotDependencywheelStatesHoverOptions; /** * (Highcharts) The opposite state of a hover for a single point node/link. */ inactive?: PlotDependencywheelStatesInactiveOptions; /** * (Highcharts) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotDependencywheelStatesNormalOptions; /** * (Highcharts, Highstock, Gantt) Options for the selected point. These * settings override the normal state options when a point is selected. */ select?: PlotDependencywheelStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotDependencywheelStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock, Gantt) Options for the selected point. These settings * override the normal state options when a point is selected. */ export interface PlotDependencywheelStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotDependencywheelStatesSelectAnimationOptions; /** * (Highcharts, Highstock, Gantt) A specific border color for the selected * point. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) A specific color for the selected point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) Enable separate styles for the hovered * series to visualize that the user hovers either the series itself or the * legend. */ enabled?: boolean; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotDependencywheelTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotDependencywheelTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotDependencywheelTooltipDateTimeLabelFormatsOptions|Dictionary<string>); distance?: number; /** * (Highcharts) Whether the tooltip should follow the pointer or stay fixed * on the item. */ followPointer?: boolean; /** * (Highcharts) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts) The name of a symbol to use for the border around the * tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts) The format string specifying what to show for _nodes_ in * tooltip of a diagram series, as opposed to links. */ nodeFormat?: string; /** * (Highcharts) A callback for defining the format for _nodes_ in the * chart's tooltip, as opposed to links. */ nodeFormatter?: FormatterCallbackFunction<SankeyNodeObject>; /** * (Highcharts) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highcharts) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts) How many decimals to show in each series' y value. This is * overridable in each series' tooltip options object. The default is to * preserve all decimals. */ valueDecimals?: number; /** * (Highcharts) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotDpoAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotDpoAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotDpoAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotDpoAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotDpoConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotDpoConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotDpoConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotDpoConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotDpoConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotDpoConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotDpoConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotDpoDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotDpoDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotDpoDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotDpoDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotDpoDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotDpoDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotDpoDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotDpoDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotDpoEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotDpoLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotDpoLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotDpoLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotDpoLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotDpoLastVisiblePriceLabelOptions; } /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotDpoMarkerOptions { /** * (Highstock) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highstock) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highstock) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. */ radius?: number; /** * (Highstock) States for a single point marker. */ states?: PlotDpoMarkerStatesOptions; /** * (Highstock) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highstock) Animation when hovering over the marker. */ export interface PlotDpoMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highstock) The hover state for a single point marker. */ export interface PlotDpoMarkerStatesHoverOptions { /** * (Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotDpoMarkerStatesHoverAnimationOptions); /** * (Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highstock) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotDpoMarkerStatesInactiveOptions { /** * (Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highstock) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotDpoMarkerStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highstock) States for a single point marker. */ export interface PlotDpoMarkerStatesOptions { /** * (Highstock) The hover state for a single point marker. */ hover?: PlotDpoMarkerStatesHoverOptions; inactive?: PlotDpoMarkerStatesInactiveOptions; /** * (Highstock) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotDpoMarkerStatesNormalOptions; /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotDpoMarkerStatesSelectOptions; } /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotDpoMarkerStatesSelectOptions { /** * (Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Detrended Price Oscillator. This series requires the `linkedTo` * option to be set and should be loaded after the * `stock/indicators/indicators.js`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `dpo` series are defined in plotOptions.dpo. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotDpoOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotDpoAccessibilityOptions); /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotDpoAnimationOptions); /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highstock) Whether to compare indicator to the main series values or * indicator values. */ compareToMain?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotDpoConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotDpoDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotDpoDragDropOptions; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotDpoEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotDpoLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotDpoLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotDpoLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The main series ID that indicator will be * based on. Required for this indicator. */ linkedTo?: string; /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotDpoMarkerOptions; /** * (Highstock) The name of the series as shown in the legend, tooltip etc. * If not set, it will be based on a technical indicator type and default * params. */ name?: string; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Parameters used in calculation of Detrended Price Oscillator * series points. */ params?: PlotDpoParamsOptions; /** * (Highstock) Properties for each single point. */ point?: PlotDpoPointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotDpoStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotDpoTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotDpoZonesOptions>; } /** * (Highstock) Parameters used in calculation of Detrended Price Oscillator * series points. */ export interface PlotDpoParamsOptions { /** * (Highstock) The point index which indicator calculations will base. For * example using OHLC data, index=2 means the indicator will be calculated * using Low values. */ index?: number; /** * (Highstock) Period for Detrended Price Oscillator */ period?: number; } /** * (Highstock) Events for each single point. */ export interface PlotDpoPointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotDpoPointOptions { /** * (Highstock) Events for each single point. */ events?: PlotDpoPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotDpoStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotDpoStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotDpoStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotDpoStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotDpoStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotDpoStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotDpoStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotDpoStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotDpoStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotDpoStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotDpoStatesHoverMarkerStatesHoverOptions; inactive?: PlotDpoStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotDpoStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotDpoStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotDpoStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotDpoStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotDpoStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotDpoStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotDpoStatesHoverMarkerOptions; } export interface PlotDpoStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotDpoStatesInactiveOptions { animation?: PlotDpoStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotDpoStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotDpoStatesOptions { /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotDpoStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotDpoStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotDpoStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotDpoStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotDpoStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotDpoStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotDpoStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotDpoStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotDpoStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotDpoStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotDpoStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotDpoStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotDpoStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotDpoStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotDpoStatesSelectMarkerStatesHoverOptions; inactive?: PlotDpoStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotDpoStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotDpoStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotDpoStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotDpoStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotDpoStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotDpoStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotDpoStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotDpoTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotDpoTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotDpoTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) Number of decimals in indicator series. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotDpoZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotEmaAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotEmaAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotEmaAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotEmaAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotEmaConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotEmaConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotEmaConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotEmaConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotEmaConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotEmaConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotEmaConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotEmaDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotEmaDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotEmaDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotEmaDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotEmaDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotEmaDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotEmaDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotEmaDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotEmaEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotEmaLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotEmaLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotEmaLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotEmaLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotEmaLastVisiblePriceLabelOptions; } /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotEmaMarkerOptions { /** * (Highstock) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highstock) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highstock) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. */ radius?: number; /** * (Highstock) States for a single point marker. */ states?: PlotEmaMarkerStatesOptions; /** * (Highstock) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highstock) Animation when hovering over the marker. */ export interface PlotEmaMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highstock) The hover state for a single point marker. */ export interface PlotEmaMarkerStatesHoverOptions { /** * (Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotEmaMarkerStatesHoverAnimationOptions); /** * (Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highstock) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotEmaMarkerStatesInactiveOptions { /** * (Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highstock) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotEmaMarkerStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highstock) States for a single point marker. */ export interface PlotEmaMarkerStatesOptions { /** * (Highstock) The hover state for a single point marker. */ hover?: PlotEmaMarkerStatesHoverOptions; inactive?: PlotEmaMarkerStatesInactiveOptions; /** * (Highstock) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotEmaMarkerStatesNormalOptions; /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotEmaMarkerStatesSelectOptions; } /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotEmaMarkerStatesSelectOptions { /** * (Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Exponential moving average indicator (EMA). This series requires * the `linkedTo` option to be set. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `ema` series are defined in plotOptions.ema. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotEmaOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotEmaAccessibilityOptions); /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotEmaAnimationOptions); /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highstock) Whether to compare indicator to the main series values or * indicator values. */ compareToMain?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotEmaConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotEmaDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotEmaDragDropOptions; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotEmaEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotEmaLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotEmaLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotEmaLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The main series ID that indicator will be * based on. Required for this indicator. */ linkedTo?: string; /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotEmaMarkerOptions; /** * (Highstock) The name of the series as shown in the legend, tooltip etc. * If not set, it will be based on a technical indicator type and default * params. */ name?: string; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Paramters used in calculation of regression series' points. */ params?: PlotEmaParamsOptions; /** * (Highstock) Properties for each single point. */ point?: PlotEmaPointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotEmaStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotEmaTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotEmaZonesOptions>; } /** * (Highstock) Paramters used in calculation of regression series' points. */ export interface PlotEmaParamsOptions { /** * (Highstock) The point index which indicator calculations will base. For * example using OHLC data, index=2 means the indicator will be calculated * using Low values. * * By default index value used to be set to 0. Since Highstock 7 by default * index is set to 3 which means that the ema indicator will be calculated * using Close values. */ index?: number; /** * (Highstock) The base period for indicator calculations. This is the * number of data points which are taken into account for the indicator * calculations. */ period?: number; } /** * (Highstock) Events for each single point. */ export interface PlotEmaPointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotEmaPointOptions { /** * (Highstock) Events for each single point. */ events?: PlotEmaPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotEmaStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotEmaStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotEmaStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotEmaStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotEmaStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotEmaStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotEmaStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotEmaStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotEmaStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotEmaStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotEmaStatesHoverMarkerStatesHoverOptions; inactive?: PlotEmaStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotEmaStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotEmaStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotEmaStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotEmaStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotEmaStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotEmaStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotEmaStatesHoverMarkerOptions; } export interface PlotEmaStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotEmaStatesInactiveOptions { animation?: PlotEmaStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotEmaStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotEmaStatesOptions { /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotEmaStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotEmaStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotEmaStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotEmaStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotEmaStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotEmaStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotEmaStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotEmaStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotEmaStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotEmaStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotEmaStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotEmaStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotEmaStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotEmaStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotEmaStatesSelectMarkerStatesHoverOptions; inactive?: PlotEmaStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotEmaStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotEmaStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotEmaStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotEmaStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotEmaStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotEmaStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotEmaStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotEmaTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotEmaTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotEmaTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) Number of decimals in indicator series. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotEmaZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts, Highstock) Keyboard navigation for a series */ export interface PlotErrorbarAccessibilityKeyboardNavigationOptions { /** * (Highcharts, Highstock) Enable/disable keyboard navigation support for a * specific series. */ enabled?: boolean; } /** * (Highcharts, Highstock) Accessibility options for a series. Requires the * accessibility module. */ export interface PlotErrorbarAccessibilityOptions { /** * (Highcharts, Highstock) Provide a description of the series, announced to * screen readers. */ description?: string; /** * (Highcharts, Highstock) Enable/disable accessibility functionality for a * specific series. */ enabled?: boolean; /** * (Highcharts, Highstock) Expose only the series element to screen readers, * not its points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts, Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotErrorbarAccessibilityKeyboardNavigationOptions); /** * (Highcharts, Highstock) Formatter function to use instead of the default * for point descriptions. Same as * `accessibility.pointDescriptionFormatter`, but for a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts, Highstock) Enable or disable the initial animation when a series * is displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotErrorbarAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotErrorbarConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotErrorbarConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotErrorbarConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotErrorbarConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotErrorbarConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotErrorbarConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotErrorbarConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotErrorbarDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. Defaults to `10`. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts, Highstock) Options for the drag handles. */ export interface PlotErrorbarDragDropDragHandleOptions { /** * (Highcharts, Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts, Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The mouse cursor to use for the drag handles. By * default this is intelligently switching between `ew-resize` and * `ns-resize` depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts, Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts, Highstock) Function to define the SVG path to use for the * drag handles. Takes the point as argument. Should return an SVG path in * array format. The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts, Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box default state. */ export interface PlotErrorbarDragDropGuideBoxDefaultOptions { /** * (Highcharts, Highstock) CSS class name of the guide box in this state. * Defaults to `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts, Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Guide box cursor. */ cursor?: string; /** * (Highcharts, Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts, Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts, Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box. The guide box has * one state by default, the `default` state. */ export interface PlotErrorbarDragDropGuideBoxOptions { /** * (Highcharts, Highstock) Style options for the guide box default state. */ default?: PlotErrorbarDragDropGuideBoxDefaultOptions; } /** * (Highcharts, Highstock) The draggable-points module allows points to be moved * around or modified in the chart. In addition to the options mentioned under * the `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotErrorbarDragDropOptions { /** * (Highcharts, Highstock) Allow high value to be dragged individually. * Requires `draggable-points` module. */ draggableHigh?: boolean; /** * (Highcharts, Highstock) Allow low value to be dragged individually. * Requires `draggable-points` module. */ draggableLow?: boolean; /** * (Highcharts, Highstock) Allow Q1 value to be dragged individually. * Requires `draggable-points` module. */ draggableQ1?: boolean; /** * (Highcharts, Highstock) Allow Q3 value to be dragged individually. * Requires `draggable-points` module. */ draggableQ3?: boolean; /** * (Highcharts, Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts, Highstock) Enable dragging in the Y dimension. Note that * this is not supported for TreeGrid axes (the default axis type in Gantt * charts). */ draggableY?: boolean; /** * (Highcharts, Highstock) Options for the drag handles. */ dragHandle?: PlotErrorbarDragDropDragHandleOptions; /** * (Highcharts, Highstock) Set the maximum X value the points can be moved * to. */ dragMaxX?: number; /** * (Highcharts, Highstock) Set the maximum Y value the points can be moved * to. */ dragMaxY?: number; /** * (Highcharts, Highstock) Set the minimum X value the points can be moved * to. */ dragMinX?: number; /** * (Highcharts, Highstock) Set the minimum Y value the points can be moved * to. */ dragMinY?: number; /** * (Highcharts, Highstock) The X precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionX?: number; /** * (Highcharts, Highstock) The Y precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionY?: number; /** * (Highcharts, Highstock) The amount of pixels to drag the pointer before * it counts as a drag operation. This prevents drag/drop to fire when just * clicking or selecting points. */ dragSensitivity?: number; /** * (Highcharts, Highstock) Group the points by a property. Points with the * same property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts, Highstock) Style options for the guide box. The guide box * has one state by default, the `default` state. */ guideBox?: (PlotErrorbarDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts, Highstock) Update points as they are dragged. If false, a * guide box is drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock) General event handlers for the series items. These * event hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotErrorbarEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts, Highstock) Fires when the checkbox next to the series' name * in the legend is clicked. One parameter, `event`, is passed to the * function. The state of the checkbox is found by `event.checked`. The * checked item is found by `event.item`. Return `false` to prevent the * default action which is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is clicked. One parameter, * `event`, is passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is hidden after chart * generation time, either by clicking the legend item or by calling * `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts, Highstock) Fires when the legend item belonging to the * series is clicked. One parameter, `event`, is passed to the function. The * default action is to toggle the visibility of the series. This can be * prevented by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse leaves the graph. One * parameter, `event`, is passed to the function, containing common event * information. If the stickyTracking option is true, `mouseOut` doesn't * happen before the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse enters the graph. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is shown after chart * generation time, either by clicking the legend item or by calling * `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotErrorbarLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotErrorbarLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotErrorbarLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotErrorbarLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotErrorbarLastVisiblePriceLabelOptions; } /** * (Highcharts, Highstock) Error bars are a graphical representation of the * variability of data and are used on graphs to indicate the error, or * uncertainty in a reported measurement. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `errorbar` series are defined in plotOptions.errorbar. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotErrorbarOptions { /** * (Highcharts, Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotErrorbarAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highcharts, Highstock) Allow this series' points to be selected by * clicking on the graphic (columns, point markers, pie slices, map areas * etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts, Highstock) Enable or disable the initial animation when a * series is displayed. The animation can also be set as a configuration * object. Please note that this option only applies to the initial * animation of the series itself. For other animations, see chart.animation * and the animation parameter under the API methods. The following * properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotErrorbarAnimationOptions); /** * (Highcharts, Highstock) For some series, there is a limit that shuts down * initial animation by default when the total number of points in the chart * is too high. For example, for a column chart and its derivatives, * animation does not run if there is more than 250 points totally. To * disable this cap, set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highcharts, Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts, Highstock) Set the point threshold for when a series should * enter boost mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highcharts, Highstock) An additional class name to apply to the series' * graphical elements. This option does not replace default class names of * the graphical element. */ className?: string; /** * (Highcharts, Highstock) Disable this option to allow series rendering in * the whole plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts) The main color of the bars. This can be overridden by * stemColor and whiskerColor individually. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts, Highstock, Gantt) When using automatic point colors pulled * from the global colors or series-specific plotOptions.column.colors * collections, this option determines whether the chart should receive one * color per series or one color per point. * * In styled mode, the `colors` or `series.colors` arrays are not supported, * and instead this option gives the points individual color class names on * the form `highcharts-color-{n}`. */ colorByPoint?: boolean; /** * (Highcharts, Highstock) Styled mode only. A specific color index to use * for the series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) A series specific or series type specific * color set to apply instead of the global colors when colorByPoint is * true. */ colors?: Array<(ColorString|GradientColorObject|PatternObject)>; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotErrorbarConnectorsOptions; /** * (Highcharts, Highstock, Gantt) When true, each column edge is rounded to * its nearest pixel in order to render sharp on screen. In some cases, when * there are a lot of densely packed columns, this leads to visible * difference in column widths or distance between columns. In these cases, * setting `crisp` to `false` may look better, even though each column is * rendered blurry. */ crisp?: boolean; /** * (Highcharts, Highstock, Gantt) When the series contains less points than * the crop threshold, all points are drawn, event if the points fall * outside the visible plot area at the current zoom. The advantage of * drawing all points (including markers and columns), is that animation is * performed on updates. On the other hand, when the series contains more * points than the crop threshold, the series data is cropped to only * contain points that fall within the plot area. The advantage of cropping * away invisible points is to increase performance on large series. */ cropThreshold?: number; /** * (Highcharts, Highstock) You can set the cursor to "pointer" if you have * click events attached to the series, to signal to the user that the * points and lines can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotErrorbarDataGroupingOptions; /** * (Highcharts, Highstock) Options for the series data labels, appearing * next to each data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) Depth of the columns in a 3D column chart. Requires * `highcharts-3d.js`. */ depth?: number; /** * (Highcharts, Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts, Highstock) The draggable-points module allows points to be * moved around or modified in the chart. In addition to the options * mentioned under the `dragDrop` API structure, the module fires three * events, point.dragStart, point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotErrorbarDragDropOptions; /** * (Highcharts) 3D columns only. The color of the edges. Similar to * `borderColor`, except it defaults to the same color as the column. */ edgeColor?: ColorString; /** * (Highcharts) 3D columns only. The width of the colored edges. */ edgeWidth?: number; /** * (Highcharts, Highstock) Enable or disable the mouse tracking for a * specific series. This includes point tooltips and click events on graphs * and points. For large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts, Highstock) General event handlers for the series items. * These event hooks can also be attached to the series at run time using * the `Highcharts.addEvent` function. */ events?: PlotErrorbarEventsOptions; /** * (Highcharts, Highstock) By default, series are exposed to screen readers * as regions. By enabling this option, the series element itself will be * exposed in the same way as the data points. This is useful if the series * is not used as a grouping entity in the chart, but you still want to * attach a description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highcharts) The fill color of the box. * * In styled mode, the fill color can be set with the * `.highcharts-boxplot-box` class. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Determines whether the series should look for the * nearest point in both dimensions or just the x-dimension when hovering * the series. Defaults to `'xy'` for scatter series and `'x'` for most * other series. If the data has duplicate x-values, it is recommended to * set this to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highcharts, Highstock, Gantt) Whether to group non-stacked columns or to * let them render independent of each other. Non-grouped columns will be * laid out individually and overlap each other. */ grouping?: boolean; /** * (Highcharts, Highstock, Gantt) Padding between each value groups, in x * axis units. */ groupPadding?: number; /** * (Highcharts, Highstock) Export-data module required. When set to `false` * will prevent the series data from being included in any form of data * export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts, Highstock) An array specifying which option maps to which * key in the data point array. This makes it convenient to work with * unstructured data arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotErrorbarLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotErrorbarLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotErrorbarLastVisiblePriceOptions; /** * (Highcharts) The width of the line surrounding the box. If any of * stemWidth, medianWidth or whiskerWidth are `null`, the lineWidth also * applies to these lines. */ lineWidth?: number; /** * (Highcharts) The parent series of the error bar. The default value links * it to the previous series. Otherwise, use the id of the parent series. */ linkedTo?: string; /** * (Highcharts, Highstock, Gantt) The maximum allowed pixel width for a * column, translated to the height of a bar in a bar chart. This prevents * the columns from becoming too wide when there is a small number of points * in the chart. */ maxPointWidth?: number; /** * (Highcharts) The color of the median line. If `undefined`, the general * series color applies. * * In styled mode, the median stroke width can be set with the * `.highcharts-boxplot-median` class. */ medianColor?: (ColorString|GradientColorObject); /** * (Highcharts) The pixel width of the median line. If `null`, the lineWidth * is used. * * In styled mode, the median stroke width can be set with the * `.highcharts-boxplot-median` class. */ medianWidth?: number; /** * (Highcharts, Highstock, Gantt) The minimal height for a column or width * for a bar. By default, 0 values are not shown. To visualize a 0 (or close * to zero) point, set the minimal point length to a pixel value like 3\. In * stacked column charts, minPointLength might not be respected for tightly * packed values. */ minPointLength?: number; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts, Highstock) The color for the parts of the graph or points * that are below the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Opacity of a series parts: line, fill (e.g. area) * and dataLabels. */ opacity?: number; /** * (Highcharts, Highstock) Properties for each single point. */ point?: PlotErrorbarPointOptions; /** * (Highcharts, Highstock) Same as accessibility.pointDescriptionFormatter, * but for an individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, `pointInterval` defines the interval of the x values. For * example, if a series contains one value every decade starting from year * 0, set `pointInterval` to `10`. In true `datetime` axes, the * `pointInterval` is set in milliseconds. * * It can be also be combined with `pointIntervalUnit` to draw irregular * time intervals. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointInterval?: number; /** * (Highcharts, Highstock, Gantt) On datetime series, this allows for * setting the pointInterval to irregular time units, `day`, `month` and * `year`. A day is usually the same as 24 hours, but `pointIntervalUnit` * also takes the DST crossover into consideration when dealing with local * time. Combine this option with `pointInterval` to draw weeks, quarters, 6 * months, 10 years etc. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointIntervalUnit?: OptionsPointIntervalUnitValue; /** * (Highcharts, Highstock, Gantt) Padding between each column or bar, in x * axis units. */ pointPadding?: number; /** * (Highcharts, Highstock, Gantt) Possible values: `"on"`, `"between"`, * `number`. * * In a column chart, when pointPlacement is `"on"`, the point will not * create any padding of the X axis. In a polar column chart this means that * the first column points directly north. If the pointPlacement is * `"between"`, the columns will be laid out between ticks. This is useful * for example for visualising an amount between two points in time or in a * certain sector of a polar chart. * * Since Highcharts 3.0.2, the point placement can also be numeric, where 0 * is on the axis value, -0.5 is between this value and the previous, and * 0.5 is between this value and the next. Unlike the textual options, * numeric point placement options won't affect axis padding. * * Note that pointPlacement needs a pointRange to work. For column series * this is computed, but for line-type series it needs to be set. * * For the `xrange` series type and gantt charts, if the Y axis is a * category axis, the `pointPlacement` applies to the Y axis rather than the * (typically datetime) X axis. * * Defaults to `undefined` in cartesian charts, `"between"` in polar charts. */ pointPlacement?: (number|string); /** * (Highcharts, Highstock, Gantt) The X axis range that each point is valid * for. This determines the width of the column. On a categorized axis, the * range will be 1 by default (one category unit). On linear and datetime * axes, the range will be computed as the distance between the two closest * data points. * * The default `null` means it is computed automatically, but this option * can be used to override the automatic value. */ pointRange?: (number|null); /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, pointStart defines on what value to start. For example, if a * series contains one yearly value starting from 1945, set pointStart to * 1945. */ pointStart?: number; /** * (Highcharts, Highstock, Gantt) A pixel value specifying a fixed width for * each column or bar. When `null`, the width is calculated from the * `pointPadding` and `groupPadding`. */ pointWidth?: number; /** * (Highcharts, Highstock) Whether to select the series initially. If * `showCheckbox` is true, the checkbox next to the series name in the * legend will be checked for a selected series. */ selected?: boolean; /** * (Highcharts, Highstock) Whether to apply a drop shadow to the graph line. * Since 2.3 the shadow can be an object configuration containing `color`, * `offsetX`, `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highcharts, Highstock) If true, a checkbox is displayed next to the * legend item to allow selecting the series. The state of the checkbox is * determined by the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts, Highstock) Whether to display this particular series or * series type in the legend. The default value is `true` for standalone * series, `false` for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts, Highstock) If set to `true`, the accessibility module will * skip past the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; /** * (Highcharts, Highstock) Whether to stack the values of each series on top * of each other. Possible values are `undefined` to disable, `"normal"` to * stack by value or `"percent"`. When stacking is enabled, data must be * sorted in ascending X order. A special stacking option is with the * streamgraph series type, where the stacking option is set to `"stream"`. * The second one is `"overlap"`, which only applies to waterfall series. */ stacking?: OptionsStackingValue; /** * (Highcharts) The dash style of the stem, the vertical line extending from * the box to the whiskers. */ stemDashStyle?: DashStyleValue; /** * (Highcharts) The width of the stem, the vertical line extending from the * box to the whiskers. If `undefined`, the width is inherited from the * lineWidth option. * * In styled mode, the stem stroke width can be set with the * `.highcharts-boxplot-stem` class. */ stemWidth?: number; /** * (Highcharts, Highstock) Sticky tracking of mouse events. When true, the * `mouseOut` event on a series isn't triggered until the mouse moves over * another series, or out of the plot area. When false, the `mouseOut` event * on a series is triggered when the mouse leaves the area around the * series' graph or markers. This also implies the tooltip when not shared. * When `stickyTracking` is false and `tooltip.shared` is false, the tooltip * will be hidden when moving the mouse between series. Defaults to true for * line and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts) The Y axis value to serve as the base for the columns, for * distinguishing between values above and below a threshold. If `null`, the * columns extend from the padding Y axis minimum. */ threshold?: any; /** * (Highcharts, Highstock) A configuration object for the tooltip rendering * of each single series. Properties are inherited from tooltip, but only * the following properties can be defined on a series level. */ tooltip?: PlotErrorbarTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highcharts, Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highcharts) The color of the whiskers, the horizontal lines marking low * and high values. When `undefined`, the general series color is used. * * In styled mode, the whisker stroke can be set with the * `.highcharts-boxplot-whisker` class . */ whiskerColor?: ColorString; /** * (Highcharts) The length of the whiskers, the horizontal lines marking low * and high values. It can be a numerical pixel value, or a percentage value * of the box width. Set `0` to disable whiskers. */ whiskerLength?: (number|string); /** * (Highcharts) The line width of the whiskers, the horizontal lines marking * low and high values. When `null`, the general lineWidth applies. */ whiskerWidth?: number; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotErrorbarZonesOptions>; } /** * (Highcharts, Highstock) Events for each single point. */ export interface PlotErrorbarPointEventsOptions { /** * (Highcharts, Highstock) Fires when a point is clicked. One parameter, * `event`, is passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock) Callback that fires while dragging a point. The * mouse event is passed in as parameter. The original data can be accessed * from `e.origin`, and the new point values can be accessed from * `e.newPoints`. If there is only a single point being updated, it can be * accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock) Callback that fires when starting to drag a * point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock) Callback that fires when the point is dropped. * The parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse leaves the area close to the * point. One parameter, `event`, is passed to the function, containing * common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse enters the area close to the * point. One parameter, `event`, is passed to the function, containing * common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is updated programmatically * through the `.update()` method. One parameter, `event`, is passed to the * function. The new point options can be accessed through `event.options`. * Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts, Highstock) Properties for each single point. */ export interface PlotErrorbarPointOptions { /** * (Highcharts, Highstock) Events for each single point. */ events?: PlotErrorbarPointEventsOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotErrorbarTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts, Highstock) A configuration object for the tooltip rendering of * each single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ export interface PlotErrorbarTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotErrorbarTooltipDateTimeLabelFormatsOptions|Dictionary<string>); distance?: number; /** * (Highcharts, Highstock) Whether the tooltip should follow the mouse as it * moves across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts, Highstock) Whether the tooltip should update as the finger * moves on a touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts, Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts, Highstock) The HTML of the tooltip header line. Variables * are enclosed by curly brackets. Available variables are `point.key`, * `series.name`, `series.color` and other members from the `point` and * `series` objects. The `point.key` variable contains the category name, x * value or datetime string depending on the type of axis. For datetime * axes, the `point.key` date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts, Highstock) The name of a symbol to use for the border around * the tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts, Highstock) The number of milliseconds to wait until the * tooltip is hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts, Highstock) The HTML of the null point's line in the tooltip. * Works analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts, Highstock) Callback function to format the text of the * tooltip for visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts, Highstock) Whether to allow the tooltip to render outside * the chart's SVG element box. By default (`false`), the tooltip is * rendered within the chart's SVG element, which results in the tooltip * being aligned inside the chart area. For small charts, this may result in * clipping or overlapping. When `true`, a separate SVG element is created * and overlaid on the page, allowing the tooltip to be aligned inside the * page itself. */ outside?: boolean; /** * (Highcharts, Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts, Highstock) The HTML of the point's line in the tooltip. * Variables are enclosed by curly brackets. Available variables are * point.x, point.y, series. name and series.color and other properties on * the same form. Furthermore, `point.y` can be extended by the * `tooltip.valuePrefix` and `tooltip.valueSuffix` variables. This can also * be overridden for each series, which makes it a good hook for displaying * units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts, Highstock) A callback function for formatting the HTML * output for a single point in the tooltip. Like the `pointFormat` string, * but with more flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts, Highstock) How many decimals to show in each series' y * value. This is overridable in each series' tooltip options object. The * default is to preserve all decimals. */ valueDecimals?: number; /** * (Highcharts, Highstock) A string to prepend to each series' y value. * Overridable in each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts, Highstock) A string to append to each series' y value. * Overridable in each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotErrorbarZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotFlagsAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotFlagsAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotFlagsAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotFlagsConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotFlagsConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotFlagsConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotFlagsConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotFlagsConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotFlagsConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotFlagsConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Options for the drag handles. */ export interface PlotFlagsDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotFlagsDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotFlagsDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotFlagsDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotFlagsDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotFlagsDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotFlagsDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotFlagsEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotFlagsLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotFlagsLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotFlagsLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotFlagsLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotFlagsLastVisiblePriceLabelOptions; } /** * (Highstock) Flags are used to mark events in stock charts. They can be added * on the timeline, or attached to a specific series. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `flags` series are defined in plotOptions.flags. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotFlagsOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotFlagsAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highstock) Whether the flags are allowed to overlap sideways. If * `false`, the flags are moved sideways using an algorithm that seeks to * place every flag as close as possible to its original position. */ allowOverlapX?: boolean; /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) A series specific or series type specific * color set to apply instead of the global colors when colorByPoint is * true. */ colors?: Array<(ColorString|GradientColorObject|PatternObject)>; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotFlagsConnectorsOptions; /** * (Highcharts, Highstock, Gantt) When true, each column edge is rounded to * its nearest pixel in order to render sharp on screen. In some cases, when * there are a lot of densely packed columns, this leads to visible * difference in column widths or distance between columns. In these cases, * setting `crisp` to `false` may look better, even though each column is * rendered blurry. */ crisp?: boolean; /** * (Highcharts, Highstock, Gantt) When the series contains less points than * the crop threshold, all points are drawn, event if the points fall * outside the visible plot area at the current zoom. The advantage of * drawing all points (including markers and columns), is that animation is * performed on updates. On the other hand, when the series contains more * points than the crop threshold, the series data is cropped to only * contain points that fall within the plot area. The advantage of cropping * away invisible points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) Depth of the columns in a 3D column chart. Requires * `highcharts-3d.js`. */ depth?: number; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotFlagsDragDropOptions; /** * (Highcharts) 3D columns only. The color of the edges. Similar to * `borderColor`, except it defaults to the same color as the column. */ edgeColor?: ColorString; /** * (Highcharts) 3D columns only. The width of the colored edges. */ edgeWidth?: number; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotFlagsEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) The fill color for the flags. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highcharts, Highstock, Gantt) Whether to group non-stacked columns or to * let them render independent of each other. Non-grouped columns will be * laid out individually and overlap each other. */ grouping?: boolean; /** * (Highcharts, Highstock, Gantt) Padding between each value groups, in x * axis units. */ groupPadding?: number; /** * (Highcharts) The spacing between columns on the Z Axis in a 3D chart. * Requires `highcharts-3d.js`. */ groupZPadding?: number; /** * (Highstock) Fixed height of the flag's shape. By default, height is * autocalculated according to the flag's title. */ height?: number; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highstock) An array specifying which option maps to which key in the * data point array. This makes it convenient to work with unstructured data * arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotFlagsLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotFlagsLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotFlagsLastVisiblePriceOptions; /** * (Highstock) The color of the line/border of the flag. * * In styled mode, the stroke is set in the * `.highcharts-flag-series.highcharts-point` rule. */ lineColor?: ColorString; /** * (Highstock) The pixel width of the flag's line/border. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts, Highstock, Gantt) The maximum allowed pixel width for a * column, translated to the height of a bar in a bar chart. This prevents * the columns from becoming too wide when there is a small number of points * in the chart. */ maxPointWidth?: number; /** * (Highcharts, Highstock, Gantt) The minimal height for a column or width * for a bar. By default, 0 values are not shown. To visualize a 0 (or close * to zero) point, set the minimal point length to a pixel value like 3\. In * stacked column charts, minPointLength might not be respected for tightly * packed values. */ minPointLength?: number; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) In case the flag is placed on a series, on what point key to * place it. Line and columns have one key, `y`. In range or OHLC-type * series, however, the flag can optionally be placed on the `open`, `high`, * `low` or `close` key. */ onKey?: OptionsOnKeyValue; /** * (Highstock) The id of the series that the flags should be drawn on. If no * id is given, the flags are drawn on the x axis. */ onSeries?: string; /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Properties for each single point. */ point?: PlotFlagsPointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, `pointInterval` defines the interval of the x values. For * example, if a series contains one value every decade starting from year * 0, set `pointInterval` to `10`. In true `datetime` axes, the * `pointInterval` is set in milliseconds. * * It can be also be combined with `pointIntervalUnit` to draw irregular * time intervals. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointInterval?: number; /** * (Highcharts, Highstock, Gantt) On datetime series, this allows for * setting the pointInterval to irregular time units, `day`, `month` and * `year`. A day is usually the same as 24 hours, but `pointIntervalUnit` * also takes the DST crossover into consideration when dealing with local * time. Combine this option with `pointInterval` to draw weeks, quarters, 6 * months, 10 years etc. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointIntervalUnit?: OptionsPointIntervalUnitValue; /** * (Highcharts, Highstock, Gantt) Possible values: `"on"`, `"between"`, * `number`. * * In a column chart, when pointPlacement is `"on"`, the point will not * create any padding of the X axis. In a polar column chart this means that * the first column points directly north. If the pointPlacement is * `"between"`, the columns will be laid out between ticks. This is useful * for example for visualising an amount between two points in time or in a * certain sector of a polar chart. * * Since Highcharts 3.0.2, the point placement can also be numeric, where 0 * is on the axis value, -0.5 is between this value and the previous, and * 0.5 is between this value and the next. Unlike the textual options, * numeric point placement options won't affect axis padding. * * Note that pointPlacement needs a pointRange to work. For column series * this is computed, but for line-type series it needs to be set. * * For the `xrange` series type and gantt charts, if the Y axis is a * category axis, the `pointPlacement` applies to the Y axis rather than the * (typically datetime) X axis. * * Defaults to `undefined` in cartesian charts, `"between"` in polar charts. */ pointPlacement?: (number|string); /** * (Highcharts, Highstock, Gantt) The X axis range that each point is valid * for. This determines the width of the column. On a categorized axis, the * range will be 1 by default (one category unit). On linear and datetime * axes, the range will be computed as the distance between the two closest * data points. * * The default `null` means it is computed automatically, but this option * can be used to override the automatic value. */ pointRange?: number; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, pointStart defines on what value to start. For example, if a * series contains one yearly value starting from 1945, set pointStart to * 1945. */ pointStart?: number; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) The shape of the marker. Can be one of "flag", "circlepin", * "squarepin", or an image of the format `url(/path-to-image.jpg)`. * Individual shapes can also be set for each point. */ shape?: FlagShapeValue; /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; /** * (Highstock) When multiple flags in the same series fall on the same * value, this number determines the vertical offset between them. */ stackDistance?: number; /** * (Highcharts, Highstock) Whether to stack the values of each series on top * of each other. Possible values are `undefined` to disable, `"normal"` to * stack by value or `"percent"`. When stacking is enabled, data must be * sorted in ascending X order. A special stacking option is with the * streamgraph series type, where the stacking option is set to `"stream"`. * The second one is `"overlap"`, which only applies to waterfall series. */ stacking?: OptionsStackingValue; states?: PlotFlagsStatesOptions; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highstock) The text styles of the flag. * * In styled mode, the styles are set in the `.highcharts-flag-series * .highcharts-point` rule. */ style?: CSSObject; /** * (Highstock) Text alignment for the text inside the flag. */ textAlign?: OptionsTextAlignValue; /** * (Highcharts) The Y axis value to serve as the base for the columns, for * distinguishing between values above and below a threshold. If `null`, the * columns extend from the padding Y axis minimum. */ threshold?: any; /** * (Highstock) The text to display on each flag. This can be defined on * series level, or individually for each point. Defaults to `"A"`. */ title?: string; /** * (Highstock) Specific tooltip options for flag series. Flag series * tooltips are different from most other types in that a flag doesn't have * a data value, so the tooltip rather displays the `text` option for each * point. */ tooltip?: PlotFlagsTooltipOptions; /** * (Highstock) Whether to use HTML to render the flag texts. Using HTML * allows for advanced formatting, images and reliable bi-directional text * rendering. Note that exported images won't respect the HTML, and that * HTML won't respect Z-index settings. */ useHTML?: boolean; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highstock) Fixed width of the flag's shape. By default, width is * autocalculated according to the flag's title. */ width?: number; /** * (Highstock) The y position of the top left corner of the flag relative to * either the series (if onSeries is defined), or the x axis. Defaults to * `-30`. */ y?: number; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotFlagsZonesOptions>; } /** * (Highstock) Events for each single point. */ export interface PlotFlagsPointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotFlagsPointOptions { /** * (Highstock) Events for each single point. */ events?: PlotFlagsPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotFlagsStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highstock) Options for the hovered point. These settings override the normal * state options when a point is moused over or touched. */ export interface PlotFlagsStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotFlagsStatesHoverAnimationOptions); /** * (Highcharts, Gantt) A specific border color for the hovered point. * Defaults to inherit the normal state border color. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) How much to brighten the point on * interaction. Requires the main color to be defined in hex or rgb(a) * format. * * In styled mode, the hover brightening is by default replaced with a * fill-opacity set in the `.highcharts-point:hover` rule. */ brightness?: number; /** * (Highcharts, Gantt) A specific color for the hovered point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highstock) The fill or background color of the flag. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the line/border of the flag. */ lineColor?: ColorString; } export interface PlotFlagsStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotFlagsStatesInactiveOptions { animation?: PlotFlagsStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotFlagsStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotFlagsStatesOptions { /** * (Highstock) Options for the hovered point. These settings override the * normal state options when a point is moused over or touched. */ hover?: PlotFlagsStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotFlagsStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotFlagsStatesNormalOptions; /** * (Highcharts, Highstock, Gantt) Options for the selected point. These * settings override the normal state options when a point is selected. */ select?: PlotFlagsStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotFlagsStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock, Gantt) Options for the selected point. These settings * override the normal state options when a point is selected. */ export interface PlotFlagsStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotFlagsStatesSelectAnimationOptions; /** * (Highcharts, Highstock, Gantt) A specific border color for the selected * point. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) A specific color for the selected point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) Enable separate styles for the hovered * series to visualize that the user hovers either the series itself or the * legend. */ enabled?: boolean; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotFlagsTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) Specific tooltip options for flag series. Flag series tooltips * are different from most other types in that a flag doesn't have a data value, * so the tooltip rather displays the `text` option for each point. */ export interface PlotFlagsTooltipOptions { /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotFlagsTooltipDateTimeLabelFormatsOptions|Dictionary<string>); distance?: number; /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotFlagsZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts) Keyboard navigation for a series */ export interface PlotFunnel3dAccessibilityKeyboardNavigationOptions { /** * (Highcharts) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highcharts) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotFunnel3dAccessibilityOptions { /** * (Highcharts) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highcharts) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highcharts) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotFunnel3dAccessibilityKeyboardNavigationOptions); /** * (Highcharts) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotFunnel3dAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotFunnel3dConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotFunnel3dConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotFunnel3dConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotFunnel3dConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotFunnel3dConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotFunnel3dConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotFunnel3dConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotFunnel3dDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. Defaults to `10`. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts) Options for the series data labels, appearing next to each data * point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names (see * example). */ export interface PlotFunnel3dDataLabelsOptions { align?: string; crop?: boolean; inside?: boolean; overflow?: string; } /** * (Highcharts) Options for the drag handles. */ export interface PlotFunnel3dDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface PlotFunnel3dDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotFunnel3dDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: PlotFunnel3dDragDropGuideBoxDefaultOptions; } /** * (Highcharts) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotFunnel3dDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: PlotFunnel3dDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotFunnel3dDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotFunnel3dEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotFunnel3dLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotFunnel3dLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotFunnel3dLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotFunnel3dLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotFunnel3dLastVisiblePriceLabelOptions; } /** * (Highcharts) A funnel3d is a 3d version of funnel series type. Funnel charts * are a type of chart often used to visualize stages in a sales project, where * the top are the initial stages with the most clients. * * It requires that the `highcharts-3d.js`, `cylinder.js` and `funnel3d.js` * module are loaded. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `funnel3d` series are defined in plotOptions.funnel3d. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotFunnel3dOptions { /** * (Highcharts) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotFunnel3dAccessibilityOptions); /** * (Highcharts) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|PlotFunnel3dAnimationOptions); /** * (Highcharts) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highcharts) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts, Highstock, Gantt) The color of the border surrounding each * column or bar. * * In styled mode, the border stroke can be set with the `.highcharts-point` * rule. */ borderColor?: ColorString; /** * (Highcharts, Highstock, Gantt) The corner radius of the border * surrounding each column or bar. */ borderRadius?: number; /** * (Highcharts, Highstock, Gantt) The width of the border surrounding each * column or bar. Defaults to `1` when there is room for a border, but to * `0` when the columns are so dense that a border would cover the next * column. * * In styled mode, the stroke width can be set with the `.highcharts-point` * rule. */ borderWidth?: number; /** * (Highcharts) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highcharts) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) When using automatic point colors pulled * from the global colors or series-specific plotOptions.column.colors * collections, this option determines whether the chart should receive one * color per series or one color per point. * * In styled mode, the `colors` or `series.colors` arrays are not supported, * and instead this option gives the points individual color class names on * the form `highcharts-color-{n}`. */ colorByPoint?: boolean; /** * (Highcharts) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) A series specific or series type specific * color set to apply instead of the global colors when colorByPoint is * true. */ colors?: Array<(ColorString|GradientColorObject|PatternObject)>; /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotFunnel3dConnectorsOptions; /** * (Highcharts, Highstock, Gantt) When true, each column edge is rounded to * its nearest pixel in order to render sharp on screen. In some cases, when * there are a lot of densely packed columns, this leads to visible * difference in column widths or distance between columns. In these cases, * setting `crisp` to `false` may look better, even though each column is * rendered blurry. */ crisp?: boolean; /** * (Highcharts, Highstock, Gantt) When the series contains less points than * the crop threshold, all points are drawn, event if the points fall * outside the visible plot area at the current zoom. The advantage of * drawing all points (including markers and columns), is that animation is * performed on updates. On the other hand, when the series contains more * points than the crop threshold, the series data is cropped to only * contain points that fall within the plot area. The advantage of cropping * away invisible points is to increase performance on large series. */ cropThreshold?: number; /** * (Highcharts) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotFunnel3dDataGroupingOptions; /** * (Highcharts) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: PlotFunnel3dDataLabelsOptions; /** * (Highcharts) Depth of the columns in a 3D column chart. Requires * `highcharts-3d.js`. */ depth?: number; /** * (Highcharts) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotFunnel3dDragDropOptions; /** * (Highcharts) 3D columns only. The color of the edges. Similar to * `borderColor`, except it defaults to the same color as the column. */ edgeColor?: ColorString; /** * (Highcharts) 3D columns only. The width of the colored edges. */ edgeWidth?: number; /** * (Highcharts) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotFunnel3dEventsOptions; /** * (Highcharts) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highcharts) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highcharts) By deafult sides fill is set to a gradient through this * option being set to `true`. Set to `false` to get solid color for the * sides. */ gradientForSides?: boolean; /** * (Highcharts, Highstock, Gantt) Whether to group non-stacked columns or to * let them render independent of each other. Non-grouped columns will be * laid out individually and overlap each other. */ grouping?: boolean; /** * (Highcharts, Highstock, Gantt) Padding between each value groups, in x * axis units. */ groupPadding?: number; /** * (Highcharts) The spacing between columns on the Z Axis in a 3D chart. * Requires `highcharts-3d.js`. */ groupZPadding?: number; /** * (Highcharts) The height of the series. If it is a number it defines the * pixel height, if it is a percentage string it is the percentage of the * plot area height. */ height?: (number|string); /** * (Highcharts) Export-data module required. When set to `false` will * prevent the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts) An array specifying which option maps to which key in the * data point array. This makes it convenient to work with unstructured data * arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotFunnel3dLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotFunnel3dLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotFunnel3dLastVisiblePriceOptions; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts, Highstock, Gantt) The maximum allowed pixel width for a * column, translated to the height of a bar in a bar chart. This prevents * the columns from becoming too wide when there is a small number of points * in the chart. */ maxPointWidth?: number; /** * (Highcharts, Highstock, Gantt) The minimal height for a column or width * for a bar. By default, 0 values are not shown. To visualize a 0 (or close * to zero) point, set the minimal point length to a pixel value like 3\. In * stacked column charts, minPointLength might not be respected for tightly * packed values. */ minPointLength?: number; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts) The height of the neck, the lower part of the funnel. A * number defines pixel width, a percentage string defines a percentage of * the plot area height. */ neckHeight?: (number|string); /** * (Highcharts) The width of the neck, the lower part of the funnel. A * number defines pixel width, a percentage string defines a percentage of * the plot area width. */ neckWidth?: (number|string); /** * (Highcharts) The color for the parts of the graph or points that are * below the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highcharts) Properties for each single point. */ point?: PlotFunnel3dPointOptions; /** * (Highcharts) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, `pointInterval` defines the interval of the x values. For * example, if a series contains one value every decade starting from year * 0, set `pointInterval` to `10`. In true `datetime` axes, the * `pointInterval` is set in milliseconds. * * It can be also be combined with `pointIntervalUnit` to draw irregular * time intervals. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointInterval?: number; /** * (Highcharts, Highstock, Gantt) On datetime series, this allows for * setting the pointInterval to irregular time units, `day`, `month` and * `year`. A day is usually the same as 24 hours, but `pointIntervalUnit` * also takes the DST crossover into consideration when dealing with local * time. Combine this option with `pointInterval` to draw weeks, quarters, 6 * months, 10 years etc. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointIntervalUnit?: OptionsPointIntervalUnitValue; /** * (Highcharts, Highstock, Gantt) Padding between each column or bar, in x * axis units. */ pointPadding?: number; /** * (Highcharts, Highstock, Gantt) Possible values: `"on"`, `"between"`, * `number`. * * In a column chart, when pointPlacement is `"on"`, the point will not * create any padding of the X axis. In a polar column chart this means that * the first column points directly north. If the pointPlacement is * `"between"`, the columns will be laid out between ticks. This is useful * for example for visualising an amount between two points in time or in a * certain sector of a polar chart. * * Since Highcharts 3.0.2, the point placement can also be numeric, where 0 * is on the axis value, -0.5 is between this value and the previous, and * 0.5 is between this value and the next. Unlike the textual options, * numeric point placement options won't affect axis padding. * * Note that pointPlacement needs a pointRange to work. For column series * this is computed, but for line-type series it needs to be set. * * For the `xrange` series type and gantt charts, if the Y axis is a * category axis, the `pointPlacement` applies to the Y axis rather than the * (typically datetime) X axis. * * Defaults to `undefined` in cartesian charts, `"between"` in polar charts. */ pointPlacement?: (number|string); /** * (Highcharts, Highstock, Gantt) The X axis range that each point is valid * for. This determines the width of the column. On a categorized axis, the * range will be 1 by default (one category unit). On linear and datetime * axes, the range will be computed as the distance between the two closest * data points. * * The default `null` means it is computed automatically, but this option * can be used to override the automatic value. */ pointRange?: (number|null); /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, pointStart defines on what value to start. For example, if a * series contains one yearly value starting from 1945, set pointStart to * 1945. */ pointStart?: number; /** * (Highcharts, Highstock, Gantt) A pixel value specifying a fixed width for * each column or bar. When `null`, the width is calculated from the * `pointPadding` and `groupPadding`. */ pointWidth?: number; /** * (Highcharts) A reversed funnel has the widest area down. A reversed * funnel with no neck width and neck height is a pyramid. */ reversed?: boolean; /** * (Highcharts) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highcharts) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highcharts) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts) If set to `true`, the accessibility module will skip past * the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; /** * (Highcharts, Highstock) Whether to stack the values of each series on top * of each other. Possible values are `undefined` to disable, `"normal"` to * stack by value or `"percent"`. When stacking is enabled, data must be * sorted in ascending X order. A special stacking option is with the * streamgraph series type, where the stacking option is set to `"stream"`. * The second one is `"overlap"`, which only applies to waterfall series. */ stacking?: OptionsStackingValue; states?: PlotFunnel3dStatesOptions; /** * (Highcharts) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts) The Y axis value to serve as the base for the columns, for * distinguishing between values above and below a threshold. If `null`, the * columns extend from the padding Y axis minimum. */ threshold?: number; /** * (Highcharts) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotFunnel3dTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highcharts) Set the initial visibility of the series. */ visible?: boolean; /** * (Highcharts) The max width of the series compared to the width of the * plot area, or the pixel width if it is a number. */ width?: (number|string); /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotFunnel3dZonesOptions>; } /** * (Highcharts) Events for each single point. */ export interface PlotFunnel3dPointEventsOptions { /** * (Highcharts) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts) Callback that fires when the point is dropped. The * parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts) Fires when the point is removed using the `.remove()` * method. One parameter, `event`, is passed to the function. Returning * `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts) Fires when the point is unselected either programmatically * or following a click on the point. One parameter, `event`, is passed to * the function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) Properties for each single point. */ export interface PlotFunnel3dPointOptions { /** * (Highcharts) Events for each single point. */ events?: PlotFunnel3dPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotFunnel3dStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock, Gantt) Options for the hovered point. These settings * override the normal state options when a point is moused over or touched. */ export interface PlotFunnel3dStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotFunnel3dStatesHoverAnimationOptions); /** * (Highcharts, Gantt) A specific border color for the hovered point. * Defaults to inherit the normal state border color. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) How much to brighten the point on * interaction. Requires the main color to be defined in hex or rgb(a) * format. * * In styled mode, the hover brightening is by default replaced with a * fill-opacity set in the `.highcharts-point:hover` rule. */ brightness?: number; /** * (Highcharts, Gantt) A specific color for the hovered point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) Enable separate styles for the hovered * series to visualize that the user hovers either the series itself or the * legend. */ enabled?: boolean; } export interface PlotFunnel3dStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts) The opposite state of a hover for series. */ export interface PlotFunnel3dStatesInactiveOptions { animation?: PlotFunnel3dStatesInactiveAnimationOptions; /** * (Highcharts) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highcharts) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotFunnel3dStatesNormalOptions { /** * (Highcharts) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotFunnel3dStatesOptions { /** * (Highcharts, Highstock, Gantt) Options for the hovered point. These * settings override the normal state options when a point is moused over or * touched. */ hover?: PlotFunnel3dStatesHoverOptions; /** * (Highcharts) The opposite state of a hover for series. */ inactive?: PlotFunnel3dStatesInactiveOptions; /** * (Highcharts) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotFunnel3dStatesNormalOptions; /** * (Highcharts, Highstock, Gantt) Options for the selected point. These * settings override the normal state options when a point is selected. */ select?: PlotFunnel3dStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotFunnel3dStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock, Gantt) Options for the selected point. These settings * override the normal state options when a point is selected. */ export interface PlotFunnel3dStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotFunnel3dStatesSelectAnimationOptions; /** * (Highcharts, Highstock, Gantt) A specific border color for the selected * point. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) A specific color for the selected point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) Enable separate styles for the hovered * series to visualize that the user hovers either the series itself or the * legend. */ enabled?: boolean; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotFunnel3dTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotFunnel3dTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotFunnel3dTooltipDateTimeLabelFormatsOptions|Dictionary<string>); distance?: number; /** * (Highcharts) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts) The name of a symbol to use for the border around the * tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highcharts) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts) How many decimals to show in each series' y value. This is * overridable in each series' tooltip options object. The default is to * preserve all decimals. */ valueDecimals?: number; /** * (Highcharts) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotFunnel3dZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts) Keyboard navigation for a series */ export interface PlotFunnelAccessibilityKeyboardNavigationOptions { /** * (Highcharts) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highcharts) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotFunnelAccessibilityOptions { /** * (Highcharts) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highcharts) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highcharts) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotFunnelAccessibilityKeyboardNavigationOptions); /** * (Highcharts) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts) Initial animation is by default disabled for the funnel chart. */ export interface PlotFunnelAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotFunnelConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotFunnelConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotFunnelConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotFunnelConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotFunnelConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotFunnelConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotFunnelConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotFunnelDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts) Options for the drag handles. */ export interface PlotFunnelDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface PlotFunnelDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotFunnelDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: PlotFunnelDragDropGuideBoxDefaultOptions; } /** * (Highcharts) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotFunnelDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: PlotFunnelDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotFunnelDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotFunnelEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts) Fires when the checkbox next to the point name in the legend * is clicked. One parameter, event, is passed to the function. The state of * the checkbox is found by event.checked. The checked item is found by * event.item. Return false to prevent the default action which is to toggle * the select state of the series. */ checkboxClick?: Function; /** * (Highcharts) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotFunnelLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotFunnelLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotFunnelLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotFunnelLastVisiblePriceLabelOptions; } /** * (Highcharts) Funnel charts are a type of chart often used to visualize stages * in a sales project, where the top are the initial stages with the most * clients. It requires that the modules/funnel.js file is loaded. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `funnel` series are defined in plotOptions.funnel. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotFunnelOptions { /** * (Highcharts) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotFunnelAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highcharts) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts) Initial animation is by default disabled for the funnel * chart. */ animation?: (boolean|PlotFunnelAnimationOptions); /** * (Highcharts) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts) The color of the border surrounding each slice. When `null`, * the border takes the same color as the slice fill. This can be used * together with a `borderWidth` to fill drawing gaps created by * antialiazing artefacts in borderless pies. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highcharts) The width of the border surrounding each slice. * * When setting the border width to 0, there may be small gaps between the * slices due to SVG antialiasing artefacts. To work around this, keep the * border width at 0.5 or 1, but set the `borderColor` to `null` instead. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highcharts) The center of the series. By default, it is centered in the * middle of the plot area, so it fills the plot area height. */ center?: Array<(number|string)>; /** * (Highcharts) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highcharts) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highcharts) A series specific or series type specific color set to use * instead of the global colors. */ colors?: Array<(ColorString|GradientColorObject|PatternObject)>; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotFunnelConnectorsOptions; /** * (Highcharts) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotFunnelDataGroupingOptions; /** * (Highcharts) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: (DataLabelsOptionsObject|PlotPieDataLabelsOptionsObject); /** * (Highcharts) The thickness of a 3D pie. Requires `highcharts-3d.js` */ depth?: number; /** * (Highcharts) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotFunnelDragDropOptions; /** * (Highcharts) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts) The end angle of the pie in degrees where 0 is top and 90 is * right. Defaults to `startAngle` plus 360. */ endAngle?: number; /** * (Highcharts) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotFunnelEventsOptions; /** * (Highcharts) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts) The height of the funnel or pyramid. If it is a number it * defines the pixel height, if it is a percentage string it is the * percentage of the plot area height. */ height?: (number|string); /** * (Highcharts) Equivalent to chart.ignoreHiddenSeries, this option tells * whether the series shall be redrawn as if the hidden point were `null`. * * The default value changed from `false` to `true` with Highcharts 3.0. */ ignoreHiddenPoint?: boolean; /** * (Highcharts) Export-data module required. When set to `false` will * prevent the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts) The size of the inner diameter for the pie. A size greater * than 0 renders a donut chart. Can be a percentage or pixel value. * Percentages are relative to the pie size. Pixel values are given as * integers. * * Note: in Highcharts < 4.1.2, the percentage was relative to the plot * area, not the pie size. */ innerSize?: (number|string); /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts) An array specifying which option maps to which key in the * data point array. This makes it convenient to work with unstructured data * arrays from different sources. */ keys?: Array<string>; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotFunnelLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotFunnelLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts) The minimum size for a pie in response to auto margins. The * pie will try to shrink to make room for data labels in side the plot * area, but only to this size. */ minSize?: number; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts) The height of the neck, the lower part of the funnel. A * number defines pixel width, a percentage string defines a percentage of * the plot area height. */ neckHeight?: (number|string); /** * (Highcharts) The width of the neck, the lower part of the funnel. A * number defines pixel width, a percentage string defines a percentage of * the plot area width. */ neckWidth?: (number|string); /** * (Highcharts) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highcharts) Properties for each single point. */ point?: PlotFunnelPointOptions; /** * (Highcharts) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) The width of each point on the x axis. For example in a * column chart with one value each day, the pointRange would be 1 day (= 24 * * 3600 * * * 1000 milliseconds). This is normally computed automatically, but this * option can be used to override the automatic value. */ pointRange?: number; /** * (Highcharts) A reversed funnel has the widest area down. A reversed * funnel with no neck width and neck height is a pyramid. */ reversed?: boolean; /** * (Highcharts) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highcharts) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highcharts) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts) Whether to display this particular series or series type in * the legend. Since 2.1, pies are not shown in the legend by default. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts) If set to `true`, the accessibility module will skip past * the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts) If a point is sliced, moved out from the center, how many * pixels should it be moved?. */ slicedOffset?: number; /** * (Highcharts) The start angle of the pie slices in degrees where 0 is top * and 90 right. */ startAngle?: number; /** * (Highcharts) Options for the series states. */ states?: PlotFunnelStatesOptions; /** * (Highcharts) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip. When `stickyTracking` is * false and `tooltip.shared` is false, the tooltip will be hidden when * moving the mouse between series. */ stickyTracking?: boolean; /** * (Highcharts) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotFunnelTooltipOptions; /** * (Highstock) The parameter allows setting line series type and use OHLC * indicators. Data in OHLC format is required. */ useOhlcData?: boolean; /** * (Highcharts) Set the initial visibility of the series. */ visible?: boolean; /** * (Highcharts) The width of the funnel compared to the width of the plot * area, or the pixel width if it is a number. */ width?: (number|string); /** * (Highmaps) Define the z index of the series. */ zIndex?: number; } /** * (Highcharts) Events for each single point. */ export interface PlotFunnelPointEventsOptions { /** * (Highcharts) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts) Callback that fires when the point is dropped. The * parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts) Fires when the legend item belonging to the pie point * (slice) is clicked. The `this` keyword refers to the point itself. One * parameter, `event`, is passed to the function, containing common event * information. The default action is to toggle the visibility of the point. * This can be prevented by calling `event.preventDefault()`. */ legendItemClick?: PointLegendItemClickCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts) Fires when the point is removed using the `.remove()` * method. One parameter, `event`, is passed to the function. Returning * `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts) Fires when the point is unselected either programmatically * or following a click on the point. One parameter, `event`, is passed to * the function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) Properties for each single point. */ export interface PlotFunnelPointOptions { /** * (Highcharts) Events for each single point. */ events?: PlotFunnelPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotFunnelStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotFunnelStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotFunnelStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts) How much to brighten the point on interaction. Requires the * main color to be defined in hex or rgb(a) format. * * In styled mode, the hover brightness is by default replaced by a * fill-opacity given in the `.highcharts-point-hover` class. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; } export interface PlotFunnelStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts) The opposite state of a hover for series. */ export interface PlotFunnelStatesInactiveOptions { animation?: PlotFunnelStatesInactiveAnimationOptions; /** * (Highcharts) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highcharts) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotFunnelStatesNormalOptions { /** * (Highcharts) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts) Options for the series states. */ export interface PlotFunnelStatesOptions { /** * (Highcharts) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotFunnelStatesHoverOptions; /** * (Highcharts) The opposite state of a hover for series. */ inactive?: PlotFunnelStatesInactiveOptions; /** * (Highcharts) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotFunnelStatesNormalOptions; /** * (Highmaps) Options for a selected funnel item. */ select?: PlotFunnelStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotFunnelStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highmaps) Options for a selected funnel item. */ export interface PlotFunnelStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotFunnelStatesSelectAnimationOptions; /** * (Highmaps) A specific border color for the selected point. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) A specific color for the selected point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotFunnelTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotFunnelTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotFunnelTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highcharts) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts) The name of a symbol to use for the border around the * tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highcharts) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts) How many decimals to show in each series' y value. This is * overridable in each series' tooltip options object. The default is to * preserve all decimals. */ valueDecimals?: number; /** * (Highcharts) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Gantt) Keyboard navigation for a series */ export interface PlotGanttAccessibilityKeyboardNavigationOptions { /** * (Gantt) Enable/disable keyboard navigation support for a specific series. */ enabled?: boolean; } /** * (Gantt) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotGanttAccessibilityOptions { /** * (Gantt) Provide a description of the series, announced to screen readers. */ description?: string; /** * (Gantt) Enable/disable accessibility functionality for a specific series. */ enabled?: boolean; /** * (Gantt) Expose only the series element to screen readers, not its points. */ exposeAsGroupOnly?: boolean; /** * (Gantt) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotGanttAccessibilityKeyboardNavigationOptions); /** * (Gantt) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Gantt) Enable or disable the initial animation when a series is displayed. * The animation can also be set as a configuration object. Please note that * this option only applies to the initial animation of the series itself. For * other animations, see chart.animation and the animation parameter under the * API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotGanttAnimationOptions { duration?: number; } export interface PlotGanttConnectorsAnimationOptions { reversed?: boolean; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotGanttConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: string; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotGanttConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotGanttConnectorsOptions { animation?: PlotGanttConnectorsAnimationOptions; /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotGanttConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotGanttConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotGanttConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: string; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotGanttConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: string; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; fill?: string; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotGanttDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. Defaults to `10`. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Gantt) Options for the drag handles. */ export interface PlotGanttDragDropDragHandleOptions { /** * (Gantt) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Gantt) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) The mouse cursor to use for the drag handles. By default this is * intelligently switching between `ew-resize` and `ns-resize` depending on * the direction the point is being dragged. */ cursor?: string; /** * (Gantt) The line color of the drag handles. */ lineColor?: ColorString; /** * (Gantt) The line width for the drag handles. */ lineWidth?: number; /** * (Gantt) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Gantt) The z index for the drag handles. */ zIndex?: number; } /** * (Gantt) Style options for the guide box default state. */ export interface PlotGanttDragDropGuideBoxDefaultOptions { /** * (Gantt) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Gantt) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Guide box cursor. */ cursor?: string; /** * (Gantt) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Gantt) Width of the line around the guide box. */ lineWidth?: number; /** * (Gantt) Guide box zIndex. */ zIndex?: number; } /** * (Gantt) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotGanttDragDropGuideBoxOptions { /** * (Gantt) Style options for the guide box default state. */ default?: PlotGanttDragDropGuideBoxDefaultOptions; } /** * (Gantt) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotGanttDragDropOptions { /** * (Gantt) Allow end value to be dragged individually. Requires * `draggable-points` module. */ draggableEnd?: boolean; /** * (Gantt) Allow start value to be dragged individually. Requires * `draggable-points` module. */ draggableStart?: boolean; /** * (Gantt) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Gantt) Allow x value to be dragged individually. Requires * `draggable-points` module. */ draggableX1?: boolean; /** * (Gantt) Allow x2 value to be dragged individually. Requires * `draggable-points` module. */ draggableX2?: boolean; /** * (Gantt) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Gantt) Options for the drag handles. */ dragHandle?: PlotGanttDragDropDragHandleOptions; /** * (Gantt) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Gantt) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Gantt) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Gantt) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Gantt) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Gantt) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Gantt) The amount of pixels to drag the pointer before it counts as a * drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Gantt) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Gantt) Style options for the guide box. The guide box has one state by * default, the `default` state. */ guideBox?: (PlotGanttDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Gantt) Update points as they are dragged. If false, a guide box is drawn * to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Gantt) General event handlers for the series items. These event hooks can * also be attached to the series at run time using the `Highcharts.addEvent` * function. */ export interface PlotGanttEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Gantt) Fires when the checkbox next to the series' name in the legend is * clicked. One parameter, `event`, is passed to the function. The state of * the checkbox is found by `event.checked`. The checked item is found by * `event.item`. Return `false` to prevent the default action which is to * toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Gantt) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Gantt) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Gantt) Fires when the legend item belonging to the series is clicked. * One parameter, `event`, is passed to the function. The default action is * to toggle the visibility of the series. This can be prevented by * returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Gantt) Fires when the mouse leaves the graph. One parameter, `event`, is * passed to the function, containing common event information. If the * stickyTracking option is true, `mouseOut` doesn't happen before the mouse * enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Gantt) Fires when the mouse enters the graph. One parameter, `event`, is * passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Gantt) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotGanttLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotGanttLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotGanttLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotGanttLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotGanttLastVisiblePriceLabelOptions; } /** * (Gantt) A `gantt` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `gantt` series are defined in plotOptions.gantt. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotGanttOptions { /** * (Gantt) Accessibility options for a series. Requires the accessibility * module. */ accessibility?: (object|PlotGanttAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Gantt) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Gantt) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotGanttAnimationOptions); /** * (Gantt) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Gantt) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts, Highstock, Gantt) The color of the border surrounding each * column or bar. * * In styled mode, the border stroke can be set with the `.highcharts-point` * rule. */ borderColor?: ColorString; /** * (Highcharts, Highstock, Gantt) The corner radius of the border * surrounding each column or bar. */ borderRadius?: number; /** * (Highcharts, Highstock, Gantt) The width of the border surrounding each * column or bar. Defaults to `1` when there is room for a border, but to * `0` when the columns are so dense that a border would cover the next * column. * * In styled mode, the stroke width can be set with the `.highcharts-point` * rule. */ borderWidth?: number; /** * (Gantt) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Gantt) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Gantt) The main color of the series. In line type series it applies to * the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts, Highstock, Gantt) In an X-range series, this option makes * all points of the same Y-axis category the same color. */ colorByPoint?: boolean; /** * (Gantt) Styled mode only. A specific color index to use for the series, * so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) A series specific or series type specific * color set to apply instead of the global colors when colorByPoint is * true. */ colors?: Array<(ColorString|GradientColorObject|PatternObject)>; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotGanttConnectorsOptions; /** * (Gantt) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotGanttDataGroupingOptions; /** * (Gantt) Options for the series data labels, appearing next to each data * point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Gantt) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Gantt) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotGanttDragDropOptions; /** * (Gantt) Enable or disable the mouse tracking for a specific series. This * includes point tooltips and click events on graphs and points. For large * datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Gantt) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotGanttEventsOptions; /** * (Gantt) By default, series are exposed to screen readers as regions. By * enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highcharts, Highstock, Gantt) Whether to group non-stacked columns or to * let them render independent of each other. Non-grouped columns will be * laid out individually and overlap each other. */ grouping?: boolean; /** * (Highcharts, Highstock, Gantt) Padding between each value groups, in x * axis units. */ groupPadding?: number; /** * (Highcharts) The spacing between columns on the Z Axis in a 3D chart. * Requires `highcharts-3d.js`. */ groupZPadding?: number; /** * (Gantt) Export-data module required. When set to `false` will prevent the * series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Gantt) An array specifying which option maps to which key in the data * point array. This makes it convenient to work with unstructured data * arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotGanttLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotGanttLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotGanttLastVisiblePriceOptions; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts, Highstock, Gantt) The maximum allowed pixel width for a * column, translated to the height of a bar in a bar chart. This prevents * the columns from becoming too wide when there is a small number of points * in the chart. */ maxPointWidth?: number; /** * (Highcharts, Highstock, Gantt) The minimal height for a column or width * for a bar. By default, 0 values are not shown. To visualize a 0 (or close * to zero) point, set the minimal point length to a pixel value like 3\. In * stacked column charts, minPointLength might not be respected for tightly * packed values. */ minPointLength?: number; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Gantt) Opacity of a series parts: line, fill (e.g. area) and dataLabels. */ opacity?: number; /** * (Gantt) A partial fill for each point, typically used to visualize how * much of a task is performed. See completed. */ partialFill?: PlotGanttPartialFillOptions; /** * (Gantt) Properties for each single point. */ point?: PlotGanttPointOptions; /** * (Gantt) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highstock, Gantt) Padding between each column or bar, in x * axis units. */ pointPadding?: number; pointRange?: number; /** * (Highcharts, Highstock, Gantt) A pixel value specifying a fixed width for * each column or bar. When `null`, the width is calculated from the * `pointPadding` and `groupPadding`. */ pointWidth?: number; /** * (Gantt) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Gantt) Whether to apply a drop shadow to the graph line. Since 2.3 the * shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Gantt) If true, a checkbox is displayed next to the legend item to allow * selecting the series. The state of the checkbox is determined by the * `selected` option. */ showCheckbox?: boolean; /** * (Gantt) Whether to display this particular series or series type in the * legend. The default value is `true` for standalone series, `false` for * linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Gantt) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; states?: PlotGanttStatesOptions; /** * (Gantt) Sticky tracking of mouse events. When true, the `mouseOut` event * on a series isn't triggered until the mouse moves over another series, or * out of the plot area. When false, the `mouseOut` event on a series is * triggered when the mouse leaves the area around the series' graph or * markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Gantt) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ tooltip?: PlotGanttTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Gantt) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotGanttZonesOptions>; } /** * (Gantt) A partial fill for each point, typically used to visualize how much * of a task is performed. See completed. */ export interface PlotGanttPartialFillOptions { /** * (Highcharts, Highstock, Gantt) The fill color to be used for partial * fills. Defaults to a darker shade of the point color. */ fill?: (ColorString|GradientColorObject|PatternObject); } /** * (Gantt) Events for each single point. */ export interface PlotGanttPointEventsOptions { /** * (Gantt) Fires when a point is clicked. One parameter, `event`, is passed * to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Gantt) Callback that fires while dragging a point. The mouse event is * passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Gantt) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Gantt) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Gantt) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Gantt) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Gantt) Fires when the point is removed using the `.remove()` method. One * parameter, `event`, is passed to the function. Returning `false` cancels * the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Gantt) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Gantt) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Gantt) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Gantt) Properties for each single point. */ export interface PlotGanttPointOptions { /** * (Gantt) Events for each single point. */ events?: PlotGanttPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotGanttStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock, Gantt) Options for the hovered point. These settings * override the normal state options when a point is moused over or touched. */ export interface PlotGanttStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotGanttStatesHoverAnimationOptions); /** * (Highcharts, Gantt) A specific border color for the hovered point. * Defaults to inherit the normal state border color. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) How much to brighten the point on * interaction. Requires the main color to be defined in hex or rgb(a) * format. * * In styled mode, the hover brightening is by default replaced with a * fill-opacity set in the `.highcharts-point:hover` rule. */ brightness?: number; /** * (Highcharts, Gantt) A specific color for the hovered point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) Enable separate styles for the hovered * series to visualize that the user hovers either the series itself or the * legend. */ enabled?: boolean; } export interface PlotGanttStatesInactiveAnimationOptions { duration?: number; } /** * (Gantt) The opposite state of a hover for series. */ export interface PlotGanttStatesInactiveOptions { animation?: PlotGanttStatesInactiveAnimationOptions; /** * (Gantt) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Gantt) The normal state of a series, or for point items in column, pie and * similar series. Currently only used for setting animation when returning to * normal state from hover. */ export interface PlotGanttStatesNormalOptions { /** * (Gantt) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotGanttStatesOptions { /** * (Highcharts, Highstock, Gantt) Options for the hovered point. These * settings override the normal state options when a point is moused over or * touched. */ hover?: PlotGanttStatesHoverOptions; /** * (Gantt) The opposite state of a hover for series. */ inactive?: PlotGanttStatesInactiveOptions; /** * (Gantt) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotGanttStatesNormalOptions; /** * (Highcharts, Highstock, Gantt) Options for the selected point. These * settings override the normal state options when a point is selected. */ select?: PlotGanttStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotGanttStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock, Gantt) Options for the selected point. These settings * override the normal state options when a point is selected. */ export interface PlotGanttStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotGanttStatesSelectAnimationOptions; /** * (Highcharts, Highstock, Gantt) A specific border color for the selected * point. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) A specific color for the selected point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) Enable separate styles for the hovered * series to visualize that the user hovers either the series itself or the * legend. */ enabled?: boolean; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotGanttTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Gantt) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotGanttTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotGanttTooltipDateTimeLabelFormatsOptions|Dictionary<string>); distance?: number; /** * (Gantt) Whether the tooltip should follow the mouse as it moves across * columns, pie slices and other point types with an extent. By default it * behaves this way for pie, polygon, map, sankey and wordcloud series by * override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Gantt) Whether the tooltip should update as the finger moves on a touch * device. If this is `true` and chart.panning is set,`followTouchMove` will * take over one-finger touches, so the user needs to use two fingers for * zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Gantt) A string to append to the tooltip format. */ footerFormat?: string; /** * (Gantt) The HTML of the tooltip header line. Variables are enclosed by * curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Gantt) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Gantt) The number of milliseconds to wait until the tooltip is hidden * when mouse out from a point or chart. */ hideDelay?: number; /** * (Gantt) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Gantt) Callback function to format the text of the tooltip for visible * null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Gantt) Whether to allow the tooltip to render outside the chart's SVG * element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Gantt) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Gantt) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: any; /** * (Gantt) A callback function for formatting the HTML output for a single * point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Gantt) How many decimals to show in each series' y value. This is * overridable in each series' tooltip options object. The default is to * preserve all decimals. */ valueDecimals?: number; /** * (Gantt) A string to prepend to each series' y value. Overridable in each * series' tooltip options object. */ valuePrefix?: string; /** * (Gantt) A string to append to each series' y value. Overridable in each * series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotGanttZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts) Keyboard navigation for a series */ export interface PlotGaugeAccessibilityKeyboardNavigationOptions { /** * (Highcharts) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highcharts) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotGaugeAccessibilityOptions { /** * (Highcharts) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highcharts) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highcharts) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotGaugeAccessibilityKeyboardNavigationOptions); /** * (Highcharts) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotGaugeAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotGaugeConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotGaugeConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotGaugeConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotGaugeConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotGaugeConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotGaugeConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotGaugeConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotGaugeDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts) Options for the dial or arrow pointer of the gauge. * * In styled mode, the dial is styled with the `.highcharts-gauge-series * .highcharts-dial` rule. */ export interface PlotGaugeDialOptions { /** * (Highcharts) The background or fill color of the gauge's dial. */ backgroundColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The length of the dial's base part, relative to the total * radius or length of the dial. */ baseLength?: string; /** * (Highcharts) The pixel width of the base of the gauge dial. The base is * the part closest to the pivot, defined by baseLength. */ baseWidth?: number; /** * (Highcharts) The border color or stroke of the gauge's dial. By default, * the borderWidth is 0, so this must be set in addition to a custom border * color. */ borderColor?: ColorString; /** * (Highcharts) The width of the gauge dial border in pixels. */ borderWidth?: number; /** * (Highcharts) The radius or length of the dial, in percentages relative to * the radius of the gauge itself. */ radius?: string; /** * (Highcharts) The length of the dial's rear end, the part that extends out * on the other side of the pivot. Relative to the dial's length. */ rearLength?: string; /** * (Highcharts) The width of the top of the dial, closest to the perimeter. * The pivot narrows in from the base to the top. */ topWidth?: number; } /** * (Highcharts) Options for the drag handles. */ export interface PlotGaugeDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface PlotGaugeDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotGaugeDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: PlotGaugeDragDropGuideBoxDefaultOptions; } /** * (Highcharts) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotGaugeDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: PlotGaugeDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotGaugeDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotGaugeEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotGaugeLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotGaugeLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotGaugeLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotGaugeLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotGaugeLastVisiblePriceLabelOptions; } /** * (Highcharts) Gauges are circular plots displaying one or more values with a * dial pointing to values along the perimeter. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `gauge` series are defined in plotOptions.gauge. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotGaugeOptions { /** * (Highcharts) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotGaugeAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highcharts) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotGaugeAnimationOptions); /** * (Highcharts) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highcharts) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highcharts) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotGaugeConnectorsOptions; /** * (Highcharts) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotGaugeDataGroupingOptions; /** * (Highcharts) Data labels for the gauge. For gauges, the data labels are * enabled by default and shown in a bordered box below the point. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts) Options for the dial or arrow pointer of the gauge. * * In styled mode, the dial is styled with the `.highcharts-gauge-series * .highcharts-dial` rule. */ dial?: PlotGaugeDialOptions; /** * (Highcharts) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotGaugeDragDropOptions; /** * (Highcharts) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotGaugeEventsOptions; /** * (Highcharts) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts) Export-data module required. When set to `false` will * prevent the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts) An array specifying which option maps to which key in the * data point array. This makes it convenient to work with unstructured data * arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotGaugeLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotGaugeLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotGaugeLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highcharts) Allow the dial to overshoot the end of the perimeter axis by * this many degrees. Say if the gauge axis goes from 0 to 60, a value of * 100, or 1000, will show 5 degrees beyond the end of the axis when this * option is set to 5. */ overshoot?: number; /** * (Highcharts) Options for the pivot or the center point of the gauge. * * In styled mode, the pivot is styled with the `.highcharts-gauge-series * .highcharts-pivot` rule. */ pivot?: PlotGaugePivotOptions; /** * (Highcharts) Properties for each single point. */ point?: PlotGaugePointOptions; /** * (Highcharts) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, `pointInterval` defines the interval of the x values. For * example, if a series contains one value every decade starting from year * 0, set `pointInterval` to `10`. In true `datetime` axes, the * `pointInterval` is set in milliseconds. * * It can be also be combined with `pointIntervalUnit` to draw irregular * time intervals. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointInterval?: number; /** * (Highcharts, Highstock, Gantt) On datetime series, this allows for * setting the pointInterval to irregular time units, `day`, `month` and * `year`. A day is usually the same as 24 hours, but `pointIntervalUnit` * also takes the DST crossover into consideration when dealing with local * time. Combine this option with `pointInterval` to draw weeks, quarters, 6 * months, 10 years etc. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointIntervalUnit?: OptionsPointIntervalUnitValue; /** * (Highstock) The width of each point on the x axis. For example in a * column chart with one value each day, the pointRange would be 1 day (= 24 * * 3600 * * * 1000 milliseconds). This is normally computed automatically, but this * option can be used to override the automatic value. */ pointRange?: number; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, pointStart defines on what value to start. For example, if a * series contains one yearly value starting from 1945, set pointStart to * 1945. */ pointStart?: number; /** * (Highcharts) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highcharts) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts) Whether to display this particular series or series type in * the legend. Defaults to false for gauge series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts) If set to `true`, the accessibility module will skip past * the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotGaugeTooltipOptions; /** * (Highstock) The parameter allows setting line series type and use OHLC * indicators. Data in OHLC format is required. */ useOhlcData?: boolean; /** * (Highcharts) Set the initial visibility of the series. */ visible?: boolean; /** * (Highcharts) When this option is `true`, the dial will wrap around the * axes. For instance, in a full-range gauge going from 0 to 360, a value of * 400 will point to 40\. When `wrap` is `false`, the dial stops at 360. */ wrap?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; } /** * (Highcharts) Options for the pivot or the center point of the gauge. * * In styled mode, the pivot is styled with the `.highcharts-gauge-series * .highcharts-pivot` rule. */ export interface PlotGaugePivotOptions { /** * (Highcharts) The background color or fill of the pivot. */ backgroundColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The border or stroke color of the pivot. In able to change * this, the borderWidth must also be set to something other than the * default 0. */ borderColor?: ColorString; /** * (Highcharts) The border or stroke width of the pivot. */ borderWidth?: number; /** * (Highcharts) The pixel radius of the pivot. */ radius?: number; } /** * (Highcharts) Events for each single point. */ export interface PlotGaugePointEventsOptions { /** * (Highcharts) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts) Callback that fires when the point is dropped. The * parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts) Fires when the point is removed using the `.remove()` * method. One parameter, `event`, is passed to the function. Returning * `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts) Fires when the point is unselected either programmatically * or following a click on the point. One parameter, `event`, is passed to * the function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) Properties for each single point. */ export interface PlotGaugePointOptions { /** * (Highcharts) Events for each single point. */ events?: PlotGaugePointEventsOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotGaugeTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotGaugeTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotGaugeTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highcharts) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts) The name of a symbol to use for the border around the * tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highcharts) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts) How many decimals to show in each series' y value. This is * overridable in each series' tooltip options object. The default is to * preserve all decimals. */ valueDecimals?: number; /** * (Highcharts) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highmaps) Keyboard navigation for a series */ export interface PlotHeatmapAccessibilityKeyboardNavigationOptions { /** * (Highcharts, Highmaps) Enable/disable keyboard navigation support for a * specific series. */ enabled?: boolean; } /** * (Highcharts, Highmaps) Accessibility options for a series. Requires the * accessibility module. */ export interface PlotHeatmapAccessibilityOptions { /** * (Highcharts, Highmaps) Provide a description of the series, announced to * screen readers. */ description?: string; /** * (Highcharts, Highmaps) Enable/disable accessibility functionality for a * specific series. */ enabled?: boolean; /** * (Highcharts, Highmaps) Expose only the series element to screen readers, * not its points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts, Highmaps) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotHeatmapAccessibilityKeyboardNavigationOptions); /** * (Highcharts, Highmaps) Formatter function to use instead of the default * for point descriptions. Same as * `accessibility.pointDescriptionFormatter`, but for a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts, Highmaps) Animation is disabled by default on the heatmap * series. */ export interface PlotHeatmapAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotHeatmapConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotHeatmapConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotHeatmapConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotHeatmapConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotHeatmapConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotHeatmapConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotHeatmapConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotHeatmapDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts, Highmaps) Options for the drag handles. */ export interface PlotHeatmapDragDropDragHandleOptions { /** * (Highcharts, Highmaps) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts, Highmaps) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highmaps) The mouse cursor to use for the drag handles. By * default this is intelligently switching between `ew-resize` and * `ns-resize` depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts, Highmaps) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts, Highmaps) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts, Highmaps) Function to define the SVG path to use for the * drag handles. Takes the point as argument. Should return an SVG path in * array format. The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts, Highmaps) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts, Highmaps) Style options for the guide box default state. */ export interface PlotHeatmapDragDropGuideBoxDefaultOptions { /** * (Highcharts, Highmaps) CSS class name of the guide box in this state. * Defaults to `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts, Highmaps) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highmaps) Guide box cursor. */ cursor?: string; /** * (Highcharts, Highmaps) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts, Highmaps) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts, Highmaps) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts, Highmaps) Style options for the guide box. The guide box has one * state by default, the `default` state. */ export interface PlotHeatmapDragDropGuideBoxOptions { /** * (Highcharts, Highmaps) Style options for the guide box default state. */ default?: PlotHeatmapDragDropGuideBoxDefaultOptions; } /** * (Highcharts, Highmaps) The draggable-points module allows points to be moved * around or modified in the chart. In addition to the options mentioned under * the `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotHeatmapDragDropOptions { /** * (Highcharts, Highmaps) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts, Highmaps) Enable dragging in the Y dimension. Note that this * is not supported for TreeGrid axes (the default axis type in Gantt * charts). */ draggableY?: boolean; /** * (Highcharts, Highmaps) Options for the drag handles. */ dragHandle?: PlotHeatmapDragDropDragHandleOptions; /** * (Highcharts, Highmaps) Set the maximum X value the points can be moved * to. */ dragMaxX?: number; /** * (Highcharts, Highmaps) Set the maximum Y value the points can be moved * to. */ dragMaxY?: number; /** * (Highcharts, Highmaps) Set the minimum X value the points can be moved * to. */ dragMinX?: number; /** * (Highcharts, Highmaps) Set the minimum Y value the points can be moved * to. */ dragMinY?: number; /** * (Highcharts, Highmaps) The X precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionX?: number; /** * (Highcharts, Highmaps) The Y precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionY?: number; /** * (Highcharts, Highmaps) The amount of pixels to drag the pointer before it * counts as a drag operation. This prevents drag/drop to fire when just * clicking or selecting points. */ dragSensitivity?: number; /** * (Highcharts, Highmaps) Group the points by a property. Points with the * same property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts, Highmaps) Style options for the guide box. The guide box has * one state by default, the `default` state. */ guideBox?: (PlotHeatmapDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts, Highmaps) Update points as they are dragged. If false, a * guide box is drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highmaps) General event handlers for the series items. These * event hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotHeatmapEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts, Highmaps) Fires when the checkbox next to the series' name * in the legend is clicked. One parameter, `event`, is passed to the * function. The state of the checkbox is found by `event.checked`. The * checked item is found by `event.item`. Return `false` to prevent the * default action which is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts, Highmaps) Fires when the series is clicked. One parameter, * `event`, is passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts, Highmaps) Fires when the series is hidden after chart * generation time, either by clicking the legend item or by calling * `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts, Highmaps) Fires when the legend item belonging to the series * is clicked. One parameter, `event`, is passed to the function. The * default action is to toggle the visibility of the series. This can be * prevented by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts, Highmaps) Fires when the mouse leaves the graph. One * parameter, `event`, is passed to the function, containing common event * information. If the stickyTracking option is true, `mouseOut` doesn't * happen before the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts, Highmaps) Fires when the mouse enters the graph. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts, Highmaps) Fires when the series is shown after chart * generation time, either by clicking the legend item or by calling * `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotHeatmapLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotHeatmapLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotHeatmapLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotHeatmapLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotHeatmapLastVisiblePriceLabelOptions; } /** * (Highcharts, Highmaps) A heatmap is a graphical representation of data where * the individual values contained in a matrix are represented as colors. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `heatmap` series are defined in plotOptions.heatmap. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotHeatmapOptions { /** * (Highcharts, Highmaps) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotHeatmapAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highcharts, Highmaps) Allow this series' points to be selected by * clicking on the graphic (columns, point markers, pie slices, map areas * etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts, Highmaps) Animation is disabled by default on the heatmap * series. */ animation?: (boolean|PlotHeatmapAnimationOptions); /** * (Highcharts, Highmaps) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts, Highmaps) Set the point threshold for when a series should * enter boost mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width for each heat map item. */ borderWidth?: number; /** * (Highcharts, Highmaps) An additional class name to apply to the series' * graphical elements. This option does not replace default class names of * the graphical element. */ className?: string; /** * (Highcharts, Highmaps) Disable this option to allow series rendering in * the whole plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts) The main color of the series. In heat maps this color is * rarely used, as we mostly use the color to denote the value of each * point. Unless options are set in the colorAxis, the default value is * pulled from the options.colors array. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts, Highmaps) Styled mode only. A specific color index to use * for the series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highcharts, Highmaps) The column size - how many X axis units each * column in the heatmap should span. */ colsize?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotHeatmapConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highcharts, Highmaps) You can set the cursor to "pointer" if you have * click events attached to the series, to signal to the user that the * points and lines can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotHeatmapDataGroupingOptions; /** * (Highcharts, Highmaps) Options for the series data labels, appearing next * to each data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts, Highmaps) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts, Highmaps) The draggable-points module allows points to be * moved around or modified in the chart. In addition to the options * mentioned under the `dragDrop` API structure, the module fires three * events, point.dragStart, point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotHeatmapDragDropOptions; /** * (Highcharts, Highmaps) Enable or disable the mouse tracking for a * specific series. This includes point tooltips and click events on graphs * and points. For large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts, Highmaps) General event handlers for the series items. These * event hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotHeatmapEventsOptions; /** * (Highcharts, Highmaps) By default, series are exposed to screen readers * as regions. By enabling this option, the series element itself will be * exposed in the same way as the data points. This is useful if the series * is not used as a grouping entity in the chart, but you still want to * attach a description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highmaps) Export-data module required. When set to `false` * will prevent the series data from being included in any form of data * export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts, Highmaps) An array specifying which option maps to which key * in the data point array. This makes it convenient to work with * unstructured data arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotHeatmapLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotHeatmapLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotHeatmapLastVisiblePriceOptions; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts, Highmaps) The color for the parts of the graph or points * that are below the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highmaps) The color applied to null points. In styled mode, * a general CSS class is applied instead. */ nullColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highmaps) Opacity of a series parts: line, fill (e.g. area) * and dataLabels. */ opacity?: number; /** * (Highcharts, Highmaps) Properties for each single point. */ point?: PlotHeatmapPointOptions; /** * (Highcharts, Highmaps) Same as accessibility.pointDescriptionFormatter, * but for an individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highmaps) Padding between the points in the heatmap. */ pointPadding?: number; /** * (Highcharts, Highmaps) The row size - how many Y axis units each heatmap * row should span. */ rowsize?: number; /** * (Highcharts, Highmaps) Whether to select the series initially. If * `showCheckbox` is true, the checkbox next to the series name in the * legend will be checked for a selected series. */ selected?: boolean; /** * (Highcharts, Highmaps) If true, a checkbox is displayed next to the * legend item to allow selecting the series. The state of the checkbox is * determined by the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts, Highmaps) Whether to display this particular series or * series type in the legend. The default value is `true` for standalone * series, `false` for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts, Highmaps) If set to `true`, the accessibility module will * skip past the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; states?: PlotHeatmapStatesOptions; /** * (Highcharts, Highstock) Sticky tracking of mouse events. When true, the * `mouseOut` event on a series isn't triggered until the mouse moves over * another series, or out of the plot area. When false, the `mouseOut` event * on a series is triggered when the mouse leaves the area around the * series' graph or markers. This also implies the tooltip. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) A configuration object for the tooltip rendering * of each single series. Properties are inherited from tooltip. Overridable * properties are `headerFormat`, `pointFormat`, `yDecimals`, `xDateFormat`, * `yPrefix` and `ySuffix`. Unlike other series, in a scatter plot the * series.name by default shows in the headerFormat and point.x and point.y * in the pointFormat. */ tooltip?: PlotHeatmapTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highcharts, Highmaps) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotHeatmapZonesOptions>; } /** * (Highcharts, Highmaps) Events for each single point. */ export interface PlotHeatmapPointEventsOptions { /** * (Highcharts, Highmaps) Fires when a point is clicked. One parameter, * `event`, is passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highmaps) Callback that fires while dragging a point. The * mouse event is passed in as parameter. The original data can be accessed * from `e.origin`, and the new point values can be accessed from * `e.newPoints`. If there is only a single point being updated, it can be * accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highmaps) Callback that fires when starting to drag a point. * The mouse event object is passed in as an argument. If a drag handle is * used, `e.updateProp` is set to the data property being dragged. The * `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highmaps) Callback that fires when the point is dropped. The * parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highmaps) Fires when the mouse leaves the area close to the * point. One parameter, `event`, is passed to the function, containing * common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highmaps) Fires when the mouse enters the area close to the * point. One parameter, `event`, is passed to the function, containing * common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highmaps) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highmaps) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highmaps) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highmaps) Fires when the point is updated programmatically * through the `.update()` method. One parameter, `event`, is passed to the * function. The new point options can be accessed through `event.options`. * Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts, Highmaps) Properties for each single point. */ export interface PlotHeatmapPointOptions { /** * (Highcharts, Highmaps) Events for each single point. */ events?: PlotHeatmapPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotHeatmapStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotHeatmapStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotHeatmapStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotHeatmapStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotHeatmapStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotHeatmapStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotHeatmapStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotHeatmapStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotHeatmapStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotHeatmapStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotHeatmapStatesHoverMarkerStatesHoverOptions; inactive?: PlotHeatmapStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotHeatmapStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotHeatmapStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotHeatmapStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts, Highmaps) Options for the hovered series. These settings * override the normal state options when a series is moused over or touched. */ export interface PlotHeatmapStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotHeatmapStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) How much to brighten the point on interaction. Requires the * main color to be defined in hex or rgb(a) format. * * In styled mode, the hover brightening is by default replaced with a * fill-opacity set in the `.highcharts-point:hover` rule. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highmaps) Enable separate styles for the hovered series to * visualize that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotHeatmapStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotHeatmapStatesHoverMarkerOptions; } export interface PlotHeatmapStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts, Highmaps) The opposite state of a hover for series. */ export interface PlotHeatmapStatesInactiveOptions { animation?: PlotHeatmapStatesInactiveAnimationOptions; /** * (Highcharts, Highmaps) Opacity of series elements (dataLabels, line, * area). */ opacity?: number; } /** * (Highcharts, Highmaps) The normal state of a series, or for point items in * column, pie and similar series. Currently only used for setting animation * when returning to normal state from hover. */ export interface PlotHeatmapStatesNormalOptions { /** * (Highcharts, Highmaps) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotHeatmapStatesOptions { /** * (Highcharts, Highmaps) Options for the hovered series. These settings * override the normal state options when a series is moused over or * touched. */ hover?: PlotHeatmapStatesHoverOptions; /** * (Highcharts, Highmaps) The opposite state of a hover for series. */ inactive?: PlotHeatmapStatesInactiveOptions; /** * (Highcharts, Highmaps) The normal state of a series, or for point items * in column, pie and similar series. Currently only used for setting * animation when returning to normal state from hover. */ normal?: PlotHeatmapStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotHeatmapStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotHeatmapStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotHeatmapStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotHeatmapStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotHeatmapStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotHeatmapStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotHeatmapStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotHeatmapStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotHeatmapStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotHeatmapStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotHeatmapStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotHeatmapStatesSelectMarkerStatesHoverOptions; inactive?: PlotHeatmapStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotHeatmapStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotHeatmapStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotHeatmapStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotHeatmapStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotHeatmapStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotHeatmapStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotHeatmapStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotHeatmapTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts, Highstock) A configuration object for the tooltip rendering of * each single series. Properties are inherited from tooltip. Overridable * properties are `headerFormat`, `pointFormat`, `yDecimals`, `xDateFormat`, * `yPrefix` and `ySuffix`. Unlike other series, in a scatter plot the * series.name by default shows in the headerFormat and point.x and point.y in * the pointFormat. */ export interface PlotHeatmapTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotHeatmapTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highcharts, Highstock) Whether the tooltip should follow the mouse as it * moves across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts, Highstock) Whether the tooltip should update as the finger * moves on a touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts, Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts, Highstock) The HTML of the tooltip header line. Variables * are enclosed by curly brackets. Available variables are `point.key`, * `series.name`, `series.color` and other members from the `point` and * `series` objects. The `point.key` variable contains the category name, x * value or datetime string depending on the type of axis. For datetime * axes, the `point.key` date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts, Highstock) The name of a symbol to use for the border around * the tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts, Highstock) The number of milliseconds to wait until the * tooltip is hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts, Highstock) The HTML of the null point's line in the tooltip. * Works analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts, Highstock) Callback function to format the text of the * tooltip for visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts, Highstock) Whether to allow the tooltip to render outside * the chart's SVG element box. By default (`false`), the tooltip is * rendered within the chart's SVG element, which results in the tooltip * being aligned inside the chart area. For small charts, this may result in * clipping or overlapping. When `true`, a separate SVG element is created * and overlaid on the page, allowing the tooltip to be aligned inside the * page itself. */ outside?: boolean; /** * (Highcharts, Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts, Highstock) The HTML of the point's line in the tooltip. * Variables are enclosed by curly brackets. Available variables are * point.x, point.y, series. name and series.color and other properties on * the same form. Furthermore, `point.y` can be extended by the * `tooltip.valuePrefix` and `tooltip.valueSuffix` variables. This can also * be overridden for each series, which makes it a good hook for displaying * units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts, Highstock) A callback function for formatting the HTML * output for a single point in the tooltip. Like the `pointFormat` string, * but with more flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts, Highstock) How many decimals to show in each series' y * value. This is overridable in each series' tooltip options object. The * default is to preserve all decimals. */ valueDecimals?: number; /** * (Highcharts, Highstock) A string to prepend to each series' y value. * Overridable in each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts, Highstock) A string to append to each series' y value. * Overridable in each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotHeatmapZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts) Keyboard navigation for a series */ export interface PlotHistogramAccessibilityKeyboardNavigationOptions { /** * (Highcharts) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highcharts) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotHistogramAccessibilityOptions { /** * (Highcharts) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highcharts) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highcharts) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotHistogramAccessibilityKeyboardNavigationOptions); /** * (Highcharts) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotHistogramAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotHistogramConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotHistogramConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotHistogramConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotHistogramConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotHistogramConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotHistogramConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotHistogramConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotHistogramDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. Defaults to `10`. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts) Options for the drag handles. */ export interface PlotHistogramDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface PlotHistogramDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotHistogramDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: PlotHistogramDragDropGuideBoxDefaultOptions; } /** * (Highcharts) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotHistogramDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: PlotHistogramDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotHistogramDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotHistogramEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotHistogramLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotHistogramLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotHistogramLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotHistogramLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotHistogramLastVisiblePriceLabelOptions; } /** * (Highcharts) A histogram is a column series which represents the distribution * of the data set in the base series. Histogram splits data into bins and shows * their frequencies. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `histogram` series are defined in plotOptions.histogram. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotHistogramOptions { /** * (Highcharts) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotHistogramAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highcharts) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotHistogramAnimationOptions); /** * (Highcharts) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highcharts) A preferable number of bins. It is a suggestion, so a * histogram may have a different number of bins. By default it is set to * the square root of the base series' data length. Available options are: * `square-root`, `sturges`, `rice`. You can also define a function which * takes a `baseSeries` as a parameter and should return a positive integer. */ binsNumber?: OptionsBinsNumberValue; /** * (Highcharts) Width of each bin. By default the bin's width is calculated * as `(max - min) / number of bins`. This option takes precedence over * binsNumber. */ binWidth?: number; /** * (Highcharts) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts, Highstock, Gantt) The color of the border surrounding each * column or bar. * * In styled mode, the border stroke can be set with the `.highcharts-point` * rule. */ borderColor?: ColorString; /** * (Highcharts, Highstock, Gantt) The corner radius of the border * surrounding each column or bar. */ borderRadius?: number; /** * (Highcharts, Highstock, Gantt) The width of the border surrounding each * column or bar. Defaults to `1` when there is room for a border, but to * `0` when the columns are so dense that a border would cover the next * column. * * In styled mode, the stroke width can be set with the `.highcharts-point` * rule. */ borderWidth?: number; /** * (Highcharts) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highcharts) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts, Highstock, Gantt) When using automatic point colors pulled * from the global colors or series-specific plotOptions.column.colors * collections, this option determines whether the chart should receive one * color per series or one color per point. * * In styled mode, the `colors` or `series.colors` arrays are not supported, * and instead this option gives the points individual color class names on * the form `highcharts-color-{n}`. */ colorByPoint?: boolean; /** * (Highcharts) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) A series specific or series type specific * color set to apply instead of the global colors when colorByPoint is * true. */ colors?: Array<(ColorString|GradientColorObject|PatternObject)>; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotHistogramConnectorsOptions; /** * (Highcharts, Highstock, Gantt) When true, each column edge is rounded to * its nearest pixel in order to render sharp on screen. In some cases, when * there are a lot of densely packed columns, this leads to visible * difference in column widths or distance between columns. In these cases, * setting `crisp` to `false` may look better, even though each column is * rendered blurry. */ crisp?: boolean; /** * (Highcharts, Highstock, Gantt) When the series contains less points than * the crop threshold, all points are drawn, event if the points fall * outside the visible plot area at the current zoom. The advantage of * drawing all points (including markers and columns), is that animation is * performed on updates. On the other hand, when the series contains more * points than the crop threshold, the series data is cropped to only * contain points that fall within the plot area. The advantage of cropping * away invisible points is to increase performance on large series. */ cropThreshold?: number; /** * (Highcharts) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotHistogramDataGroupingOptions; /** * (Highcharts) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) Depth of the columns in a 3D column chart. Requires * `highcharts-3d.js`. */ depth?: number; /** * (Highcharts) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotHistogramDragDropOptions; /** * (Highcharts) 3D columns only. The color of the edges. Similar to * `borderColor`, except it defaults to the same color as the column. */ edgeColor?: ColorString; /** * (Highcharts) 3D columns only. The width of the colored edges. */ edgeWidth?: number; /** * (Highcharts) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotHistogramEventsOptions; /** * (Highcharts) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highcharts) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highcharts, Highstock, Gantt) Whether to group non-stacked columns or to * let them render independent of each other. Non-grouped columns will be * laid out individually and overlap each other. */ grouping?: boolean; /** * (Highcharts, Highstock, Gantt) Padding between each value groups, in x * axis units. */ groupPadding?: number; /** * (Highcharts) The spacing between columns on the Z Axis in a 3D chart. * Requires `highcharts-3d.js`. */ groupZPadding?: number; /** * (Highcharts) Export-data module required. When set to `false` will * prevent the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts) An array specifying which option maps to which key in the * data point array. This makes it convenient to work with unstructured data * arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotHistogramLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotHistogramLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotHistogramLastVisiblePriceOptions; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts, Highstock, Gantt) The maximum allowed pixel width for a * column, translated to the height of a bar in a bar chart. This prevents * the columns from becoming too wide when there is a small number of points * in the chart. */ maxPointWidth?: number; /** * (Highcharts, Highstock, Gantt) The minimal height for a column or width * for a bar. By default, 0 values are not shown. To visualize a 0 (or close * to zero) point, set the minimal point length to a pixel value like 3\. In * stacked column charts, minPointLength might not be respected for tightly * packed values. */ minPointLength?: number; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts) The color for the parts of the graph or points that are * below the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highcharts) Properties for each single point. */ point?: PlotHistogramPointOptions; /** * (Highcharts) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highstock, Gantt) Padding between each column or bar, in x * axis units. */ pointPadding?: number; /** * (Highcharts, Highstock, Gantt) Possible values: `"on"`, `"between"`, * `number`. * * In a column chart, when pointPlacement is `"on"`, the point will not * create any padding of the X axis. In a polar column chart this means that * the first column points directly north. If the pointPlacement is * `"between"`, the columns will be laid out between ticks. This is useful * for example for visualising an amount between two points in time or in a * certain sector of a polar chart. * * Since Highcharts 3.0.2, the point placement can also be numeric, where 0 * is on the axis value, -0.5 is between this value and the previous, and * 0.5 is between this value and the next. Unlike the textual options, * numeric point placement options won't affect axis padding. * * Note that pointPlacement needs a pointRange to work. For column series * this is computed, but for line-type series it needs to be set. * * For the `xrange` series type and gantt charts, if the Y axis is a * category axis, the `pointPlacement` applies to the Y axis rather than the * (typically datetime) X axis. * * Defaults to `undefined` in cartesian charts, `"between"` in polar charts. */ pointPlacement?: string; /** * (Highcharts, Highstock, Gantt) The X axis range that each point is valid * for. This determines the width of the column. On a categorized axis, the * range will be 1 by default (one category unit). On linear and datetime * axes, the range will be computed as the distance between the two closest * data points. * * The default `null` means it is computed automatically, but this option * can be used to override the automatic value. */ pointRange?: (number|null); /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, pointStart defines on what value to start. For example, if a * series contains one yearly value starting from 1945, set pointStart to * 1945. */ pointStart?: number; /** * (Highcharts, Highstock, Gantt) A pixel value specifying a fixed width for * each column or bar. When `null`, the width is calculated from the * `pointPadding` and `groupPadding`. */ pointWidth?: number; /** * (Highcharts) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highcharts) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highcharts) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts) If set to `true`, the accessibility module will skip past * the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotHistogramStatesOptions; /** * (Highcharts) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts) The Y axis value to serve as the base for the columns, for * distinguishing between values above and below a threshold. If `null`, the * columns extend from the padding Y axis minimum. */ threshold?: number; /** * (Highcharts) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotHistogramTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highcharts) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotHistogramZonesOptions>; } /** * (Highcharts) Events for each single point. */ export interface PlotHistogramPointEventsOptions { /** * (Highcharts) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts) Callback that fires when the point is dropped. The * parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts) Fires when the point is removed using the `.remove()` * method. One parameter, `event`, is passed to the function. Returning * `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts) Fires when the point is unselected either programmatically * or following a click on the point. One parameter, `event`, is passed to * the function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) Properties for each single point. */ export interface PlotHistogramPointOptions { /** * (Highcharts) Events for each single point. */ events?: PlotHistogramPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotHistogramStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock, Gantt) Options for the hovered point. These settings * override the normal state options when a point is moused over or touched. */ export interface PlotHistogramStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotHistogramStatesHoverAnimationOptions); /** * (Highcharts, Gantt) A specific border color for the hovered point. * Defaults to inherit the normal state border color. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) How much to brighten the point on * interaction. Requires the main color to be defined in hex or rgb(a) * format. * * In styled mode, the hover brightening is by default replaced with a * fill-opacity set in the `.highcharts-point:hover` rule. */ brightness?: number; /** * (Highcharts, Gantt) A specific color for the hovered point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) Enable separate styles for the hovered * series to visualize that the user hovers either the series itself or the * legend. */ enabled?: boolean; } export interface PlotHistogramStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts) The opposite state of a hover for series. */ export interface PlotHistogramStatesInactiveOptions { animation?: PlotHistogramStatesInactiveAnimationOptions; /** * (Highcharts) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highcharts) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotHistogramStatesNormalOptions { /** * (Highcharts) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotHistogramStatesOptions { /** * (Highcharts, Highstock, Gantt) Options for the hovered point. These * settings override the normal state options when a point is moused over or * touched. */ hover?: PlotHistogramStatesHoverOptions; /** * (Highcharts) The opposite state of a hover for series. */ inactive?: PlotHistogramStatesInactiveOptions; /** * (Highcharts) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotHistogramStatesNormalOptions; /** * (Highcharts, Highstock, Gantt) Options for the selected point. These * settings override the normal state options when a point is selected. */ select?: PlotHistogramStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotHistogramStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock, Gantt) Options for the selected point. These settings * override the normal state options when a point is selected. */ export interface PlotHistogramStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotHistogramStatesSelectAnimationOptions; /** * (Highcharts, Highstock, Gantt) A specific border color for the selected * point. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) A specific color for the selected point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) Enable separate styles for the hovered * series to visualize that the user hovers either the series itself or the * legend. */ enabled?: boolean; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotHistogramTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotHistogramTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotHistogramTooltipDateTimeLabelFormatsOptions|Dictionary<string>); distance?: number; /** * (Highcharts) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts) The name of a symbol to use for the border around the * tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highcharts) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts) How many decimals to show in each series' y value. This is * overridable in each series' tooltip options object. The default is to * preserve all decimals. */ valueDecimals?: number; /** * (Highcharts) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotHistogramZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotIkhAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotIkhAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotIkhAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotIkhAnimationOptions { duration?: number; } /** * (Highstock) The styles for Chikou line */ export interface PlotIkhChikouLineOptions { styles?: PlotIkhChikouLineStylesOptions; } export interface PlotIkhChikouLineStylesOptions { /** * (Highstock) Color of the line. */ lineColor?: ColorString; /** * (Highstock) Pixel width of the line. */ lineWidth?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotIkhConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotIkhConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotIkhConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotIkhConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotIkhConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotIkhConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotIkhConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotIkhDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: string; /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotIkhDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotIkhDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotIkhDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotIkhDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotIkhDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotIkhDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotIkhDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotIkhEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highstock) The styles for Kijun line */ export interface PlotIkhKijunLineOptions { styles?: PlotIkhKijunLineStylesOptions; } export interface PlotIkhKijunLineStylesOptions { /** * (Highstock) Color of the line. */ lineColor?: ColorString; /** * (Highstock) Pixel width of the line. */ lineWidth?: number; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotIkhLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotIkhLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotIkhLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotIkhLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotIkhLastVisiblePriceLabelOptions; } /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotIkhMarkerOptions { /** * (Highstock) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highstock) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highstock) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. */ radius?: number; /** * (Highstock) States for a single point marker. */ states?: PlotIkhMarkerStatesOptions; /** * (Highstock) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highstock) Animation when hovering over the marker. */ export interface PlotIkhMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highstock) The hover state for a single point marker. */ export interface PlotIkhMarkerStatesHoverOptions { /** * (Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotIkhMarkerStatesHoverAnimationOptions); /** * (Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highstock) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotIkhMarkerStatesInactiveOptions { /** * (Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highstock) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotIkhMarkerStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highstock) States for a single point marker. */ export interface PlotIkhMarkerStatesOptions { /** * (Highstock) The hover state for a single point marker. */ hover?: PlotIkhMarkerStatesHoverOptions; inactive?: PlotIkhMarkerStatesInactiveOptions; /** * (Highstock) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotIkhMarkerStatesNormalOptions; /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotIkhMarkerStatesSelectOptions; } /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotIkhMarkerStatesSelectOptions { /** * (Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Ichimoku Kinko Hyo (IKH). This series requires `linkedTo` option * to be set. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `ikh` series are defined in plotOptions.ikh. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotIkhOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotIkhAccessibilityOptions); /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotIkhAnimationOptions); /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highstock) The styles for Chikou line */ chikouLine?: PlotIkhChikouLineOptions; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highstock) Whether to compare indicator to the main series values or * indicator values. */ compareToMain?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotIkhConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotIkhDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotIkhDragDropOptions; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotIkhEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highstock) The styles for Kijun line */ kijunLine?: PlotIkhKijunLineOptions; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotIkhLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotIkhLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotIkhLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The main series ID that indicator will be * based on. Required for this indicator. */ linkedTo?: string; /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotIkhMarkerOptions; /** * (Highstock) The name of the series as shown in the legend, tooltip etc. * If not set, it will be based on a technical indicator type and default * params. */ name?: string; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Paramters used in calculation of regression series' points. */ params?: PlotIkhParamsOptions; /** * (Highstock) Properties for each single point. */ point?: PlotIkhPointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) The styles for area between Senkou Span A and B. */ senkouSpan?: PlotIkhSenkouSpanOptions; /** * (Highstock) The styles for Senkou Span A line */ senkouSpanA?: PlotIkhSenkouSpanAOptions; /** * (Highstock) The styles for Senkou Span B line */ senkouSpanB?: PlotIkhSenkouSpanBOptions; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotIkhStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highstock) The styles for Tenkan line */ tenkanLine?: PlotIkhTenkanLineOptions; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotIkhTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotIkhZonesOptions>; } /** * (Highstock) Paramters used in calculation of regression series' points. */ export interface PlotIkhParamsOptions { /** * (Highstock) The point index which indicator calculations will base. For * example using OHLC data, index=2 means the indicator will be calculated * using Low values. */ index?: number; /** * (Highstock) The base period for indicator calculations. This is the * number of data points which are taken into account for the indicator * calculations. */ period?: number; /** * (Highstock) The base period for Senkou Span B calculations */ periodSenkouSpanB?: number; /** * (Highstock) The base period for Tenkan calculations. */ periodTenkan?: number; } /** * (Highstock) Events for each single point. */ export interface PlotIkhPointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotIkhPointOptions { /** * (Highstock) Events for each single point. */ events?: PlotIkhPointEventsOptions; } /** * (Highstock) The styles for Senkou Span A line */ export interface PlotIkhSenkouSpanAOptions { styles?: PlotIkhSenkouSpanAStylesOptions; } export interface PlotIkhSenkouSpanAStylesOptions { /** * (Highstock) Color of the line. */ lineColor?: ColorString; /** * (Highstock) Pixel width of the line. */ lineWidth?: number; } /** * (Highstock) The styles for Senkou Span B line */ export interface PlotIkhSenkouSpanBOptions { styles?: PlotIkhSenkouSpanBStylesOptions; } export interface PlotIkhSenkouSpanBStylesOptions { /** * (Highstock) Color of the line. */ lineColor?: ColorString; /** * (Highstock) Pixel width of the line. */ lineWidth?: number; } /** * (Highstock) The styles for area between Senkou Span A and B. */ export interface PlotIkhSenkouSpanOptions { /** * (Highstock) Color of the area between Senkou Span A and B, when Senkou * Span A is above Senkou Span B. Note that if a `style.fill` is defined, * the `color` takes precedence and the `style.fill` is ignored. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Color of the area between Senkou Span A and B, when Senkou * Span A is under Senkou Span B. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); styles?: PlotIkhSenkouSpanStylesOptions; } export interface PlotIkhSenkouSpanStylesOptions { /** * (Highstock) Color of the area between Senkou Span A and B. */ fill?: (ColorString|GradientColorObject|PatternObject); } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotIkhStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotIkhStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotIkhStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotIkhStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotIkhStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotIkhStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotIkhStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotIkhStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotIkhStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotIkhStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotIkhStatesHoverMarkerStatesHoverOptions; inactive?: PlotIkhStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotIkhStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotIkhStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotIkhStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotIkhStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotIkhStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotIkhStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotIkhStatesHoverMarkerOptions; } export interface PlotIkhStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotIkhStatesInactiveOptions { animation?: PlotIkhStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotIkhStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotIkhStatesOptions { /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotIkhStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotIkhStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotIkhStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotIkhStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotIkhStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotIkhStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotIkhStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotIkhStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotIkhStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotIkhStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotIkhStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotIkhStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotIkhStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotIkhStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotIkhStatesSelectMarkerStatesHoverOptions; inactive?: PlotIkhStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotIkhStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotIkhStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotIkhStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotIkhStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotIkhStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotIkhStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotIkhStatesSelectMarkerOptions; } /** * (Highstock) The styles for Tenkan line */ export interface PlotIkhTenkanLineOptions { styles?: PlotIkhTenkanLineStylesOptions; } export interface PlotIkhTenkanLineStylesOptions { /** * (Highstock) Color of the line. */ lineColor?: ColorString; /** * (Highstock) Pixel width of the line. */ lineWidth?: number; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotIkhTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotIkhTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotIkhTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) Number of decimals in indicator series. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotIkhZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts) Keyboard navigation for a series */ export interface PlotItemAccessibilityKeyboardNavigationOptions { /** * (Highcharts) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highcharts) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotItemAccessibilityOptions { /** * (Highcharts) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highcharts) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highcharts) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotItemAccessibilityKeyboardNavigationOptions); /** * (Highcharts) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotItemAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotItemConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotItemConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotItemConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotItemConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotItemConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotItemConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotItemConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotItemDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotItemEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts) Fires when the checkbox next to the point name in the legend * is clicked. One parameter, event, is passed to the function. The state of * the checkbox is found by event.checked. The checked item is found by * event.item. Return false to prevent the default action which is to toggle * the select state of the series. */ checkboxClick?: Function; /** * (Highcharts) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotItemLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotItemLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotItemLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotItemLastVisiblePriceLabelOptions; } /** * (Highcharts) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotItemMarkerOptions { /** * (Highcharts) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highcharts) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highcharts) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highcharts) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts) The radius of the point marker. */ radius?: number; /** * (Highcharts) States for a single point marker. */ states?: PlotItemMarkerStatesOptions; /** * (Highcharts) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts) Animation when hovering over the marker. */ export interface PlotItemMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts) The hover state for a single point marker. */ export interface PlotItemMarkerStatesHoverOptions { /** * (Highcharts) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotItemMarkerStatesHoverAnimationOptions); /** * (Highcharts) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highcharts) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotItemMarkerStatesInactiveOptions { /** * (Highcharts) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotItemMarkerStatesNormalOptions { /** * (Highcharts) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts) States for a single point marker. */ export interface PlotItemMarkerStatesOptions { /** * (Highcharts) The hover state for a single point marker. */ hover?: PlotItemMarkerStatesHoverOptions; inactive?: PlotItemMarkerStatesInactiveOptions; /** * (Highcharts) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotItemMarkerStatesNormalOptions; /** * (Highcharts) The appearance of the point marker when selected. In order * to allow a point to be selected, set the `series.allowPointSelect` option * to true. */ select?: PlotItemMarkerStatesSelectOptions; } /** * (Highcharts) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotItemMarkerStatesSelectOptions { /** * (Highcharts) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts) An item chart is an infographic chart where a number of items * are laid out in either a rectangular or circular pattern. It can be used to * visualize counts within a group, or for the circular pattern, typically a * parliament. * * The circular layout has much in common with a pie chart. Many of the item * series options, like `center`, `size` and data label positioning, are * inherited from the pie series and don't apply for rectangular layouts. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `item` series are defined in plotOptions.item. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotItemOptions { /** * (Highcharts) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotItemAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highcharts) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotItemAnimationOptions); /** * (Highcharts) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts) The center of the pie chart relative to the plot area. Can * be percentages or pixel values. The default behaviour (as of 3.0) is to * center the pie so that all slices and data labels are within the plot * area. As a consequence, the pie may actually jump around in a chart with * dynamic values, as the data labels move. In that case, the center should * be explicitly set, for example to `["50%", "50%"]`. */ center?: Array<(number|string|null)>; /** * (Highcharts) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highcharts) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highcharts) A series specific or series type specific color set to use * instead of the global colors. */ colors?: Array<(ColorString|GradientColorObject|PatternObject)>; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotItemConnectorsOptions; /** * (Highcharts) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotItemDataGroupingOptions; /** * (Highcharts) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: (DataLabelsOptionsObject|PlotPieDataLabelsOptionsObject); /** * (Highcharts) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts) In circular view, the end angle of the item layout, in * degrees where 0 is up. */ endAngle?: (number|undefined); /** * (Highcharts) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotItemEventsOptions; /** * (Highcharts) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts) Equivalent to chart.ignoreHiddenSeries, this option tells * whether the series shall be redrawn as if the hidden point were `null`. * * The default value changed from `false` to `true` with Highcharts 3.0. */ ignoreHiddenPoint?: boolean; /** * (Highcharts) Export-data module required. When set to `false` will * prevent the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts) In circular view, the size of the inner diameter of the * circle. Can be a percentage or pixel value. Percentages are relative to * the outer perimeter. Pixel values are given as integers. * * If the `rows` option is set, it overrides the `innerSize` setting. */ innerSize?: (number|string); /** * (Highcharts) The padding between the items, given in relative size where * the size of the item is 1. */ itemPadding?: number; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts) An array specifying which option maps to which key in the * data point array. This makes it convenient to work with unstructured data * arrays from different sources. */ keys?: Array<string>; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotItemLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotItemLastVisiblePriceOptions; /** * (Highcharts) The layout of the items in rectangular view. Can be either * `horizontal` or `vertical`. */ layout?: string; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts) Options for the point markers of line-like series. * Properties like `fillColor`, `lineColor` and `lineWidth` define the * visual appearance of the markers. Other series types, like column series, * don't have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotItemMarkerOptions; /** * (Highcharts) The minimum size for a pie in response to auto margins. The * pie will try to shrink to make room for data labels in side the plot * area, but only to this size. */ minSize?: number; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highcharts) Properties for each single point. */ point?: PlotItemPointOptions; /** * (Highcharts) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) The width of each point on the x axis. For example in a * column chart with one value each day, the pointRange would be 1 day (= 24 * * 3600 * * * 1000 milliseconds). This is normally computed automatically, but this * option can be used to override the automatic value. */ pointRange?: number; /** * (Highcharts) The number of rows to display in the rectangular or circular * view. If the `innerSize` is set, it will be overridden by the `rows` * setting. */ rows?: number; /** * (Highcharts) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highcharts) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts) Whether to display this particular series or series type in * the legend. Since 2.1, pies are not shown in the legend by default. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts) The diameter of the pie relative to the plot area. Can be a * percentage or pixel value. Pixel values are given as integers. The * default behaviour (as of 3.0) is to scale to the plot area and give room * for data labels within the plot area. slicedOffset is also included in * the default size calculation. As a consequence, the size of the pie may * vary when points are updated and data labels more around. In that case it * is best to set a fixed value, for example `"75%"`. */ size?: (number|string|null); /** * (Highcharts) If set to `true`, the accessibility module will skip past * the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts) In circular view, the start angle of the item layout, in * degrees where 0 is up. */ startAngle?: (number|undefined); states?: PlotItemStatesOptions; /** * (Highcharts) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip. When `stickyTracking` is * false and `tooltip.shared` is false, the tooltip will be hidden when * moving the mouse between series. */ stickyTracking?: boolean; /** * (Highcharts) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotItemTooltipOptions; /** * (Highstock) The parameter allows setting line series type and use OHLC * indicators. Data in OHLC format is required. */ useOhlcData?: boolean; /** * (Highcharts) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; } /** * (Highcharts) Events for each single point. */ export interface PlotItemPointEventsOptions { /** * (Highcharts) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts) Callback that fires when the point is dropped. The * parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts) Fires when the legend item belonging to the pie point * (slice) is clicked. The `this` keyword refers to the point itself. One * parameter, `event`, is passed to the function, containing common event * information. The default action is to toggle the visibility of the point. * This can be prevented by calling `event.preventDefault()`. */ legendItemClick?: PointLegendItemClickCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts) Fires when the point is removed using the `.remove()` * method. One parameter, `event`, is passed to the function. Returning * `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts) Fires when the point is unselected either programmatically * or following a click on the point. One parameter, `event`, is passed to * the function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) Properties for each single point. */ export interface PlotItemPointOptions { /** * (Highcharts) Events for each single point. */ events?: PlotItemPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotItemStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotItemStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotItemStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotItemStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts) How much to brighten the point on interaction. Requires the * main color to be defined in hex or rgb(a) format. * * In styled mode, the hover brightness is by default replaced by a * fill-opacity given in the `.highcharts-point-hover` class. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotItemStatesHoverHaloOptions|null); } export interface PlotItemStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts) The opposite state of a hover for series. */ export interface PlotItemStatesInactiveOptions { animation?: PlotItemStatesInactiveAnimationOptions; /** * (Highcharts) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highcharts) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotItemStatesNormalOptions { /** * (Highcharts) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotItemStatesOptions { /** * (Highcharts) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotItemStatesHoverOptions; /** * (Highcharts) The opposite state of a hover for series. */ inactive?: PlotItemStatesInactiveOptions; /** * (Highcharts) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotItemStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotItemStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotItemStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotItemStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotItemStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotItemStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotItemStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotItemStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotItemStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotItemStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotItemStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotItemStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotItemStatesSelectMarkerStatesHoverOptions; inactive?: PlotItemStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotItemStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotItemStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotItemStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotItemStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotItemStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotItemStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotItemStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotItemTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotItemTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotItemTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highcharts) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts) The name of a symbol to use for the border around the * tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highcharts) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts) How many decimals to show in each series' y value. This is * overridable in each series' tooltip options object. The default is to * preserve all decimals. */ valueDecimals?: number; /** * (Highcharts) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotKeltnerchannelsAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotKeltnerchannelsAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotKeltnerchannelsAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotKeltnerchannelsAnimationOptions { duration?: number; } /** * (Highstock) Bottom line options. */ export interface PlotKeltnerchannelsBottomLineOptions { /** * (Highstock) Styles for a bottom line. */ styles?: PlotKeltnerchannelsBottomLineStylesOptions; } /** * (Highstock) Styles for a bottom line. */ export interface PlotKeltnerchannelsBottomLineStylesOptions { /** * (Highstock) Color of the line. If not set, it's inherited from * `plotOptions.keltnerchannels.color` */ lineColor?: any; /** * (Highstock) Pixel width of the line. */ lineWidth?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotKeltnerchannelsConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotKeltnerchannelsConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotKeltnerchannelsConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotKeltnerchannelsConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotKeltnerchannelsConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotKeltnerchannelsConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotKeltnerchannelsConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotKeltnerchannelsDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: string; /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotKeltnerchannelsDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotKeltnerchannelsDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotKeltnerchannelsDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotKeltnerchannelsDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotKeltnerchannelsDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotKeltnerchannelsDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotKeltnerchannelsDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotKeltnerchannelsEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotKeltnerchannelsLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotKeltnerchannelsLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotKeltnerchannelsLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotKeltnerchannelsLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotKeltnerchannelsLastVisiblePriceLabelOptions; } /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotKeltnerchannelsMarkerOptions { /** * (Highstock) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highstock) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highstock) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. */ radius?: number; /** * (Highstock) States for a single point marker. */ states?: PlotKeltnerchannelsMarkerStatesOptions; /** * (Highstock) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highstock) Animation when hovering over the marker. */ export interface PlotKeltnerchannelsMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highstock) The hover state for a single point marker. */ export interface PlotKeltnerchannelsMarkerStatesHoverOptions { /** * (Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotKeltnerchannelsMarkerStatesHoverAnimationOptions); /** * (Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highstock) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotKeltnerchannelsMarkerStatesInactiveOptions { /** * (Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highstock) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotKeltnerchannelsMarkerStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highstock) States for a single point marker. */ export interface PlotKeltnerchannelsMarkerStatesOptions { /** * (Highstock) The hover state for a single point marker. */ hover?: PlotKeltnerchannelsMarkerStatesHoverOptions; inactive?: PlotKeltnerchannelsMarkerStatesInactiveOptions; /** * (Highstock) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotKeltnerchannelsMarkerStatesNormalOptions; /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotKeltnerchannelsMarkerStatesSelectOptions; } /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotKeltnerchannelsMarkerStatesSelectOptions { /** * (Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Keltner Channels. This series requires the `linkedTo` option to * be set and should be loaded after the `stock/indicators/indicators.js`, * `stock/indicators/atr.js`, and `stock/ema/.js`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `keltnerchannels` series are defined in * plotOptions.keltnerchannels. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotKeltnerchannelsOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotKeltnerchannelsAccessibilityOptions); /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotKeltnerchannelsAnimationOptions); /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highstock) Bottom line options. */ bottomLine?: PlotKeltnerchannelsBottomLineOptions; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highstock) Whether to compare indicator to the main series values or * indicator values. */ compareToMain?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotKeltnerchannelsConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotKeltnerchannelsDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotKeltnerchannelsDragDropOptions; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotKeltnerchannelsEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotKeltnerchannelsLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotKeltnerchannelsLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotKeltnerchannelsLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The main series ID that indicator will be * based on. Required for this indicator. */ linkedTo?: string; /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotKeltnerchannelsMarkerOptions; /** * (Highstock) The name of the series as shown in the legend, tooltip etc. * If not set, it will be based on a technical indicator type and default * params. */ name?: string; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Paramters used in calculation of regression series' points. */ params?: PlotKeltnerchannelsParamsOptions; /** * (Highstock) Properties for each single point. */ point?: PlotKeltnerchannelsPointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotKeltnerchannelsStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotKeltnerchannelsTooltipOptions; /** * (Highstock) Top line options. */ topLine?: PlotKeltnerchannelsTopLineOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotKeltnerchannelsZonesOptions>; } /** * (Highstock) Paramters used in calculation of regression series' points. */ export interface PlotKeltnerchannelsParamsOptions { /** * (Highstock) The point index which indicator calculations will base. For * example using OHLC data, index=2 means the indicator will be calculated * using Low values. */ index?: number; /** * (Highstock) The ATR multiplier. */ multiplierATR?: number; /** * (Highstock) The base period for indicator calculations. This is the * number of data points which are taken into account for the indicator * calculations. */ period?: number; /** * (Highstock) The ATR period. */ periodATR?: number; } /** * (Highstock) Events for each single point. */ export interface PlotKeltnerchannelsPointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotKeltnerchannelsPointOptions { /** * (Highstock) Events for each single point. */ events?: PlotKeltnerchannelsPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotKeltnerchannelsStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotKeltnerchannelsStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotKeltnerchannelsStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotKeltnerchannelsStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotKeltnerchannelsStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotKeltnerchannelsStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotKeltnerchannelsStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotKeltnerchannelsStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotKeltnerchannelsStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotKeltnerchannelsStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotKeltnerchannelsStatesHoverMarkerStatesHoverOptions; inactive?: PlotKeltnerchannelsStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotKeltnerchannelsStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotKeltnerchannelsStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotKeltnerchannelsStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotKeltnerchannelsStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotKeltnerchannelsStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotKeltnerchannelsStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotKeltnerchannelsStatesHoverMarkerOptions; } export interface PlotKeltnerchannelsStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotKeltnerchannelsStatesInactiveOptions { animation?: PlotKeltnerchannelsStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotKeltnerchannelsStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotKeltnerchannelsStatesOptions { /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotKeltnerchannelsStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotKeltnerchannelsStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotKeltnerchannelsStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotKeltnerchannelsStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotKeltnerchannelsStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotKeltnerchannelsStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotKeltnerchannelsStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotKeltnerchannelsStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotKeltnerchannelsStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotKeltnerchannelsStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotKeltnerchannelsStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotKeltnerchannelsStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotKeltnerchannelsStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotKeltnerchannelsStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotKeltnerchannelsStatesSelectMarkerStatesHoverOptions; inactive?: PlotKeltnerchannelsStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotKeltnerchannelsStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotKeltnerchannelsStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotKeltnerchannelsStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotKeltnerchannelsStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotKeltnerchannelsStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotKeltnerchannelsStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotKeltnerchannelsStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotKeltnerchannelsTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotKeltnerchannelsTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotKeltnerchannelsTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) Number of decimals in indicator series. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highstock) Top line options. */ export interface PlotKeltnerchannelsTopLineOptions { /** * (Highstock) Styles for a bottom line. */ styles?: PlotKeltnerchannelsTopLineStylesOptions; } /** * (Highstock) Styles for a bottom line. */ export interface PlotKeltnerchannelsTopLineStylesOptions { /** * (Highstock) Color of the line. If not set, it's inherited from * `plotOptions.keltnerchannels.color` */ lineColor?: any; /** * (Highstock) Pixel width of the line. */ lineWidth?: number; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotKeltnerchannelsZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts, Highstock) Keyboard navigation for a series */ export interface PlotLineAccessibilityKeyboardNavigationOptions { /** * (Highcharts, Highstock) Enable/disable keyboard navigation support for a * specific series. */ enabled?: boolean; } /** * (Highcharts, Highstock) Accessibility options for a series. Requires the * accessibility module. */ export interface PlotLineAccessibilityOptions { /** * (Highcharts, Highstock) Provide a description of the series, announced to * screen readers. */ description?: string; /** * (Highcharts, Highstock) Enable/disable accessibility functionality for a * specific series. */ enabled?: boolean; /** * (Highcharts, Highstock) Expose only the series element to screen readers, * not its points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts, Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotLineAccessibilityKeyboardNavigationOptions); /** * (Highcharts, Highstock) Formatter function to use instead of the default * for point descriptions. Same as * `accessibility.pointDescriptionFormatter`, but for a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts, Highstock) Enable or disable the initial animation when a series * is displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotLineAnimationOptions { duration?: number; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotLinearregressionAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotLinearregressionAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotLinearregressionAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotLinearregressionangleAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotLinearregressionangleAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotLinearregressionangleAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotLinearregressionangleAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotLinearregressionangleConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotLinearregressionangleConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotLinearregressionangleConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotLinearregressionangleConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotLinearregressionangleConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotLinearregressionangleConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotLinearregressionangleConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotLinearregressionangleDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotLinearregressionangleDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotLinearregressionangleDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotLinearregressionangleDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotLinearregressionangleDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotLinearregressionangleDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotLinearregressionangleDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotLinearregressionangleDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotLinearregressionangleEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotLinearregressionangleLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotLinearregressionangleLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotLinearregressionangleLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotLinearregressionangleLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotLinearregressionangleLastVisiblePriceLabelOptions; } /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotLinearregressionangleMarkerOptions { /** * (Highstock) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highstock) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highstock) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. */ radius?: number; /** * (Highstock) States for a single point marker. */ states?: PlotLinearregressionangleMarkerStatesOptions; /** * (Highstock) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highstock) Animation when hovering over the marker. */ export interface PlotLinearregressionangleMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highstock) The hover state for a single point marker. */ export interface PlotLinearregressionangleMarkerStatesHoverOptions { /** * (Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotLinearregressionangleMarkerStatesHoverAnimationOptions); /** * (Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highstock) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotLinearregressionangleMarkerStatesInactiveOptions { /** * (Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highstock) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotLinearregressionangleMarkerStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highstock) States for a single point marker. */ export interface PlotLinearregressionangleMarkerStatesOptions { /** * (Highstock) The hover state for a single point marker. */ hover?: PlotLinearregressionangleMarkerStatesHoverOptions; inactive?: PlotLinearregressionangleMarkerStatesInactiveOptions; /** * (Highstock) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotLinearregressionangleMarkerStatesNormalOptions; /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotLinearregressionangleMarkerStatesSelectOptions; } /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotLinearregressionangleMarkerStatesSelectOptions { /** * (Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Linear regression angle indicator. This series requires * `linkedTo` option to be set. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `linearregressionangle` series are defined in * plotOptions.linearregressionangle. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotLinearregressionangleOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotLinearregressionangleAccessibilityOptions); /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotLinearregressionangleAnimationOptions); /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highstock) Whether to compare indicator to the main series values or * indicator values. */ compareToMain?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotLinearregressionangleConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotLinearregressionangleDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotLinearregressionangleDragDropOptions; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotLinearregressionangleEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotLinearregressionangleLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotLinearregressionangleLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotLinearregressionangleLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The main series ID that indicator will be * based on. Required for this indicator. */ linkedTo?: string; /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotLinearregressionangleMarkerOptions; /** * (Highstock) The name of the series as shown in the legend, tooltip etc. * If not set, it will be based on a technical indicator type and default * params. */ name?: string; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Paramters used in calculation of regression series' points. */ params?: PlotLinearregressionangleParamsOptions; /** * (Highstock) Properties for each single point. */ point?: PlotLinearregressionanglePointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotLinearregressionangleStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotLinearregressionangleTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotLinearregressionangleZonesOptions>; } /** * (Highstock) Paramters used in calculation of regression series' points. */ export interface PlotLinearregressionangleParamsOptions { /** * (Highstock) The point index which indicator calculations will base. For * example using OHLC data, index=2 means the indicator will be calculated * using Low values. */ index?: number; /** * (Highstock) The base period for indicator calculations. This is the * number of data points which are taken into account for the indicator * calculations. */ period?: number; /** * (Highstock) Unit (in milliseconds) for the x axis distances used to * compute the regression line paramters (slope & intercept) for every * range. In Highstock the x axis values are always represented in * milliseconds which may cause that distances between points are "big" * integer numbers. * * Highstock's linear regression algorithm (least squares method) will * utilize these "big" integers for finding the slope and the intercept of * the regression line for each period. In consequence, this value may be a * very "small" decimal number that's hard to interpret by a human. * * For instance: `xAxisUnit` equealed to `86400000` ms (1 day) forces the * algorithm to treat `86400000` as `1` while computing the slope and the * intercept. This may enchance the legiblitity of the indicator's values. * * Default value is the closest distance between two data points. */ xAxisUnit?: number; } /** * (Highstock) Events for each single point. */ export interface PlotLinearregressionanglePointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotLinearregressionanglePointOptions { /** * (Highstock) Events for each single point. */ events?: PlotLinearregressionanglePointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotLinearregressionangleStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotLinearregressionangleStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotLinearregressionangleStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotLinearregressionangleStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotLinearregressionangleStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotLinearregressionangleStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotLinearregressionangleStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotLinearregressionangleStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotLinearregressionangleStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotLinearregressionangleStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotLinearregressionangleStatesHoverMarkerStatesHoverOptions; inactive?: PlotLinearregressionangleStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotLinearregressionangleStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotLinearregressionangleStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotLinearregressionangleStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotLinearregressionangleStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotLinearregressionangleStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotLinearregressionangleStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotLinearregressionangleStatesHoverMarkerOptions; } export interface PlotLinearregressionangleStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotLinearregressionangleStatesInactiveOptions { animation?: PlotLinearregressionangleStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotLinearregressionangleStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotLinearregressionangleStatesOptions { /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotLinearregressionangleStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotLinearregressionangleStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotLinearregressionangleStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotLinearregressionangleStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotLinearregressionangleStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotLinearregressionangleStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotLinearregressionangleStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotLinearregressionangleStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotLinearregressionangleStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotLinearregressionangleStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotLinearregressionangleStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotLinearregressionangleStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotLinearregressionangleStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotLinearregressionangleStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotLinearregressionangleStatesSelectMarkerStatesHoverOptions; inactive?: PlotLinearregressionangleStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotLinearregressionangleStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotLinearregressionangleStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotLinearregressionangleStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotLinearregressionangleStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotLinearregressionangleStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotLinearregressionangleStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotLinearregressionangleStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotLinearregressionangleTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotLinearregressionangleTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotLinearregressionangleTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) Number of decimals in indicator series. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotLinearregressionangleZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotLinearregressionAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotLinearregressionConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotLinearregressionConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotLinearregressionConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotLinearregressionConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotLinearregressionConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotLinearregressionConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotLinearregressionConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotLinearregressionDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotLinearregressionDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotLinearregressionDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotLinearregressionDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotLinearregressionDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotLinearregressionDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotLinearregressionDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotLinearregressionDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotLinearregressionEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotLinearregressioninterceptAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotLinearregressioninterceptAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotLinearregressioninterceptAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotLinearregressioninterceptAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotLinearregressioninterceptConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotLinearregressioninterceptConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotLinearregressioninterceptConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotLinearregressioninterceptConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotLinearregressioninterceptConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotLinearregressioninterceptConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotLinearregressioninterceptConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotLinearregressioninterceptDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotLinearregressioninterceptDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotLinearregressioninterceptDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotLinearregressioninterceptDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotLinearregressioninterceptDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotLinearregressioninterceptDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotLinearregressioninterceptDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotLinearregressioninterceptDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotLinearregressioninterceptEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotLinearregressioninterceptLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotLinearregressioninterceptLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotLinearregressioninterceptLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotLinearregressioninterceptLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotLinearregressioninterceptLastVisiblePriceLabelOptions; } /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotLinearregressioninterceptMarkerOptions { /** * (Highstock) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highstock) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highstock) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. */ radius?: number; /** * (Highstock) States for a single point marker. */ states?: PlotLinearregressioninterceptMarkerStatesOptions; /** * (Highstock) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highstock) Animation when hovering over the marker. */ export interface PlotLinearregressioninterceptMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highstock) The hover state for a single point marker. */ export interface PlotLinearregressioninterceptMarkerStatesHoverOptions { /** * (Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotLinearregressioninterceptMarkerStatesHoverAnimationOptions); /** * (Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highstock) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotLinearregressioninterceptMarkerStatesInactiveOptions { /** * (Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highstock) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotLinearregressioninterceptMarkerStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highstock) States for a single point marker. */ export interface PlotLinearregressioninterceptMarkerStatesOptions { /** * (Highstock) The hover state for a single point marker. */ hover?: PlotLinearregressioninterceptMarkerStatesHoverOptions; inactive?: PlotLinearregressioninterceptMarkerStatesInactiveOptions; /** * (Highstock) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotLinearregressioninterceptMarkerStatesNormalOptions; /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotLinearregressioninterceptMarkerStatesSelectOptions; } /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotLinearregressioninterceptMarkerStatesSelectOptions { /** * (Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Linear regression intercept indicator. This series requires * `linkedTo` option to be set. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `linearregressionintercept` series are defined in * plotOptions.linearregressionintercept. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotLinearregressioninterceptOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotLinearregressioninterceptAccessibilityOptions); /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotLinearregressioninterceptAnimationOptions); /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highstock) Whether to compare indicator to the main series values or * indicator values. */ compareToMain?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotLinearregressioninterceptConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotLinearregressioninterceptDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotLinearregressioninterceptDragDropOptions; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotLinearregressioninterceptEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotLinearregressioninterceptLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotLinearregressioninterceptLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotLinearregressioninterceptLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The main series ID that indicator will be * based on. Required for this indicator. */ linkedTo?: string; /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotLinearregressioninterceptMarkerOptions; /** * (Highstock) The name of the series as shown in the legend, tooltip etc. * If not set, it will be based on a technical indicator type and default * params. */ name?: string; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Paramters used in calculation of regression series' points. */ params?: PlotLinearregressioninterceptParamsOptions; /** * (Highstock) Properties for each single point. */ point?: PlotLinearregressioninterceptPointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotLinearregressioninterceptStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotLinearregressioninterceptTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotLinearregressioninterceptZonesOptions>; } /** * (Highstock) Paramters used in calculation of regression series' points. */ export interface PlotLinearregressioninterceptParamsOptions { /** * (Highstock) The point index which indicator calculations will base. For * example using OHLC data, index=2 means the indicator will be calculated * using Low values. */ index?: number; /** * (Highstock) The base period for indicator calculations. This is the * number of data points which are taken into account for the indicator * calculations. */ period?: number; /** * (Highstock) Unit (in milliseconds) for the x axis distances used to * compute the regression line paramters (slope & intercept) for every * range. In Highstock the x axis values are always represented in * milliseconds which may cause that distances between points are "big" * integer numbers. * * Highstock's linear regression algorithm (least squares method) will * utilize these "big" integers for finding the slope and the intercept of * the regression line for each period. In consequence, this value may be a * very "small" decimal number that's hard to interpret by a human. * * For instance: `xAxisUnit` equealed to `86400000` ms (1 day) forces the * algorithm to treat `86400000` as `1` while computing the slope and the * intercept. This may enchance the legiblitity of the indicator's values. * * Default value is the closest distance between two data points. */ xAxisUnit?: number; } /** * (Highstock) Events for each single point. */ export interface PlotLinearregressioninterceptPointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotLinearregressioninterceptPointOptions { /** * (Highstock) Events for each single point. */ events?: PlotLinearregressioninterceptPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotLinearregressioninterceptStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotLinearregressioninterceptStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotLinearregressioninterceptStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotLinearregressioninterceptStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotLinearregressioninterceptStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotLinearregressioninterceptStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotLinearregressioninterceptStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotLinearregressioninterceptStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotLinearregressioninterceptStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotLinearregressioninterceptStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotLinearregressioninterceptStatesHoverMarkerStatesHoverOptions; inactive?: PlotLinearregressioninterceptStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotLinearregressioninterceptStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotLinearregressioninterceptStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotLinearregressioninterceptStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotLinearregressioninterceptStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotLinearregressioninterceptStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotLinearregressioninterceptStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotLinearregressioninterceptStatesHoverMarkerOptions; } export interface PlotLinearregressioninterceptStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotLinearregressioninterceptStatesInactiveOptions { animation?: PlotLinearregressioninterceptStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotLinearregressioninterceptStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotLinearregressioninterceptStatesOptions { /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotLinearregressioninterceptStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotLinearregressioninterceptStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotLinearregressioninterceptStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotLinearregressioninterceptStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotLinearregressioninterceptStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotLinearregressioninterceptStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotLinearregressioninterceptStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotLinearregressioninterceptStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotLinearregressioninterceptStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotLinearregressioninterceptStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotLinearregressioninterceptStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotLinearregressioninterceptStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotLinearregressioninterceptStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotLinearregressioninterceptStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotLinearregressioninterceptStatesSelectMarkerStatesHoverOptions; inactive?: PlotLinearregressioninterceptStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotLinearregressioninterceptStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotLinearregressioninterceptStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotLinearregressioninterceptStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotLinearregressioninterceptStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotLinearregressioninterceptStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotLinearregressioninterceptStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotLinearregressioninterceptStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotLinearregressioninterceptTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotLinearregressioninterceptTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotLinearregressioninterceptTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) Number of decimals in indicator series. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotLinearregressioninterceptZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotLinearregressionLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotLinearregressionLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotLinearregressionLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotLinearregressionLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotLinearregressionLastVisiblePriceLabelOptions; } /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotLinearregressionMarkerOptions { /** * (Highstock) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highstock) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highstock) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. */ radius?: number; /** * (Highstock) States for a single point marker. */ states?: PlotLinearregressionMarkerStatesOptions; /** * (Highstock) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highstock) Animation when hovering over the marker. */ export interface PlotLinearregressionMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highstock) The hover state for a single point marker. */ export interface PlotLinearregressionMarkerStatesHoverOptions { /** * (Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotLinearregressionMarkerStatesHoverAnimationOptions); /** * (Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highstock) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotLinearregressionMarkerStatesInactiveOptions { /** * (Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highstock) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotLinearregressionMarkerStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highstock) States for a single point marker. */ export interface PlotLinearregressionMarkerStatesOptions { /** * (Highstock) The hover state for a single point marker. */ hover?: PlotLinearregressionMarkerStatesHoverOptions; inactive?: PlotLinearregressionMarkerStatesInactiveOptions; /** * (Highstock) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotLinearregressionMarkerStatesNormalOptions; /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotLinearregressionMarkerStatesSelectOptions; } /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotLinearregressionMarkerStatesSelectOptions { /** * (Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Linear regression indicator. This series requires `linkedTo` * option to be set. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `linearregression` series are defined in * plotOptions.linearregression. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotLinearregressionOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotLinearregressionAccessibilityOptions); /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotLinearregressionAnimationOptions); /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highstock) Whether to compare indicator to the main series values or * indicator values. */ compareToMain?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotLinearregressionConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotLinearregressionDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotLinearregressionDragDropOptions; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotLinearregressionEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotLinearregressionLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotLinearregressionLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotLinearregressionLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The main series ID that indicator will be * based on. Required for this indicator. */ linkedTo?: string; /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotLinearregressionMarkerOptions; /** * (Highstock) The name of the series as shown in the legend, tooltip etc. * If not set, it will be based on a technical indicator type and default * params. */ name?: string; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Paramters used in calculation of regression series' points. */ params?: PlotLinearregressionParamsOptions; /** * (Highstock) Properties for each single point. */ point?: PlotLinearregressionPointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotLinearregressionStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotLinearregressionTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotLinearregressionZonesOptions>; } /** * (Highstock) Paramters used in calculation of regression series' points. */ export interface PlotLinearregressionParamsOptions { /** * (Highstock) The point index which indicator calculations will base. For * example using OHLC data, index=2 means the indicator will be calculated * using Low values. */ index?: number; /** * (Highstock) The base period for indicator calculations. This is the * number of data points which are taken into account for the indicator * calculations. */ period?: number; /** * (Highstock) Unit (in milliseconds) for the x axis distances used to * compute the regression line paramters (slope & intercept) for every * range. In Highstock the x axis values are always represented in * milliseconds which may cause that distances between points are "big" * integer numbers. * * Highstock's linear regression algorithm (least squares method) will * utilize these "big" integers for finding the slope and the intercept of * the regression line for each period. In consequence, this value may be a * very "small" decimal number that's hard to interpret by a human. * * For instance: `xAxisUnit` equealed to `86400000` ms (1 day) forces the * algorithm to treat `86400000` as `1` while computing the slope and the * intercept. This may enchance the legiblitity of the indicator's values. * * Default value is the closest distance between two data points. */ xAxisUnit?: number; } /** * (Highstock) Events for each single point. */ export interface PlotLinearregressionPointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotLinearregressionPointOptions { /** * (Highstock) Events for each single point. */ events?: PlotLinearregressionPointEventsOptions; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotLinearregressionslopeAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotLinearregressionslopeAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotLinearregressionslopeAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotLinearregressionslopeAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotLinearregressionslopeConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotLinearregressionslopeConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotLinearregressionslopeConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotLinearregressionslopeConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotLinearregressionslopeConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotLinearregressionslopeConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotLinearregressionslopeConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotLinearregressionslopeDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotLinearregressionslopeDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotLinearregressionslopeDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotLinearregressionslopeDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotLinearregressionslopeDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotLinearregressionslopeDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotLinearregressionslopeDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotLinearregressionslopeDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotLinearregressionslopeEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotLinearregressionslopeLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotLinearregressionslopeLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotLinearregressionslopeLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotLinearregressionslopeLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotLinearregressionslopeLastVisiblePriceLabelOptions; } /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotLinearregressionslopeMarkerOptions { /** * (Highstock) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highstock) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highstock) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. */ radius?: number; /** * (Highstock) States for a single point marker. */ states?: PlotLinearregressionslopeMarkerStatesOptions; /** * (Highstock) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highstock) Animation when hovering over the marker. */ export interface PlotLinearregressionslopeMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highstock) The hover state for a single point marker. */ export interface PlotLinearregressionslopeMarkerStatesHoverOptions { /** * (Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotLinearregressionslopeMarkerStatesHoverAnimationOptions); /** * (Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highstock) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotLinearregressionslopeMarkerStatesInactiveOptions { /** * (Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highstock) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotLinearregressionslopeMarkerStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highstock) States for a single point marker. */ export interface PlotLinearregressionslopeMarkerStatesOptions { /** * (Highstock) The hover state for a single point marker. */ hover?: PlotLinearregressionslopeMarkerStatesHoverOptions; inactive?: PlotLinearregressionslopeMarkerStatesInactiveOptions; /** * (Highstock) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotLinearregressionslopeMarkerStatesNormalOptions; /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotLinearregressionslopeMarkerStatesSelectOptions; } /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotLinearregressionslopeMarkerStatesSelectOptions { /** * (Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Linear regression slope indicator. This series requires * `linkedTo` option to be set. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `linearregressionslope` series are defined in * plotOptions.linearregressionslope. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotLinearregressionslopeOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotLinearregressionslopeAccessibilityOptions); /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotLinearregressionslopeAnimationOptions); /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highstock) Whether to compare indicator to the main series values or * indicator values. */ compareToMain?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotLinearregressionslopeConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotLinearregressionslopeDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotLinearregressionslopeDragDropOptions; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotLinearregressionslopeEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotLinearregressionslopeLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotLinearregressionslopeLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotLinearregressionslopeLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The main series ID that indicator will be * based on. Required for this indicator. */ linkedTo?: string; /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotLinearregressionslopeMarkerOptions; /** * (Highstock) The name of the series as shown in the legend, tooltip etc. * If not set, it will be based on a technical indicator type and default * params. */ name?: string; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Paramters used in calculation of regression series' points. */ params?: PlotLinearregressionslopeParamsOptions; /** * (Highstock) Properties for each single point. */ point?: PlotLinearregressionslopePointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotLinearregressionslopeStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotLinearregressionslopeTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotLinearregressionslopeZonesOptions>; } /** * (Highstock) Paramters used in calculation of regression series' points. */ export interface PlotLinearregressionslopeParamsOptions { /** * (Highstock) The point index which indicator calculations will base. For * example using OHLC data, index=2 means the indicator will be calculated * using Low values. */ index?: number; /** * (Highstock) The base period for indicator calculations. This is the * number of data points which are taken into account for the indicator * calculations. */ period?: number; /** * (Highstock) Unit (in milliseconds) for the x axis distances used to * compute the regression line paramters (slope & intercept) for every * range. In Highstock the x axis values are always represented in * milliseconds which may cause that distances between points are "big" * integer numbers. * * Highstock's linear regression algorithm (least squares method) will * utilize these "big" integers for finding the slope and the intercept of * the regression line for each period. In consequence, this value may be a * very "small" decimal number that's hard to interpret by a human. * * For instance: `xAxisUnit` equealed to `86400000` ms (1 day) forces the * algorithm to treat `86400000` as `1` while computing the slope and the * intercept. This may enchance the legiblitity of the indicator's values. * * Default value is the closest distance between two data points. */ xAxisUnit?: number; } /** * (Highstock) Events for each single point. */ export interface PlotLinearregressionslopePointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotLinearregressionslopePointOptions { /** * (Highstock) Events for each single point. */ events?: PlotLinearregressionslopePointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotLinearregressionslopeStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotLinearregressionslopeStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotLinearregressionslopeStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotLinearregressionslopeStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotLinearregressionslopeStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotLinearregressionslopeStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotLinearregressionslopeStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotLinearregressionslopeStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotLinearregressionslopeStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotLinearregressionslopeStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotLinearregressionslopeStatesHoverMarkerStatesHoverOptions; inactive?: PlotLinearregressionslopeStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotLinearregressionslopeStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotLinearregressionslopeStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotLinearregressionslopeStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotLinearregressionslopeStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotLinearregressionslopeStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotLinearregressionslopeStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotLinearregressionslopeStatesHoverMarkerOptions; } export interface PlotLinearregressionslopeStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotLinearregressionslopeStatesInactiveOptions { animation?: PlotLinearregressionslopeStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotLinearregressionslopeStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotLinearregressionslopeStatesOptions { /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotLinearregressionslopeStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotLinearregressionslopeStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotLinearregressionslopeStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotLinearregressionslopeStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotLinearregressionslopeStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotLinearregressionslopeStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotLinearregressionslopeStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotLinearregressionslopeStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotLinearregressionslopeStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotLinearregressionslopeStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotLinearregressionslopeStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotLinearregressionslopeStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotLinearregressionslopeStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotLinearregressionslopeStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotLinearregressionslopeStatesSelectMarkerStatesHoverOptions; inactive?: PlotLinearregressionslopeStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotLinearregressionslopeStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotLinearregressionslopeStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotLinearregressionslopeStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotLinearregressionslopeStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotLinearregressionslopeStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotLinearregressionslopeStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotLinearregressionslopeStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotLinearregressionslopeTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotLinearregressionslopeTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotLinearregressionslopeTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) Number of decimals in indicator series. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotLinearregressionslopeZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotLinearregressionStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotLinearregressionStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotLinearregressionStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotLinearregressionStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotLinearregressionStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotLinearregressionStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotLinearregressionStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotLinearregressionStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotLinearregressionStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotLinearregressionStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotLinearregressionStatesHoverMarkerStatesHoverOptions; inactive?: PlotLinearregressionStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotLinearregressionStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotLinearregressionStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotLinearregressionStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotLinearregressionStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotLinearregressionStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotLinearregressionStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotLinearregressionStatesHoverMarkerOptions; } export interface PlotLinearregressionStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotLinearregressionStatesInactiveOptions { animation?: PlotLinearregressionStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotLinearregressionStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotLinearregressionStatesOptions { /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotLinearregressionStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotLinearregressionStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotLinearregressionStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotLinearregressionStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotLinearregressionStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotLinearregressionStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotLinearregressionStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotLinearregressionStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotLinearregressionStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotLinearregressionStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotLinearregressionStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotLinearregressionStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotLinearregressionStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotLinearregressionStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotLinearregressionStatesSelectMarkerStatesHoverOptions; inactive?: PlotLinearregressionStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotLinearregressionStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotLinearregressionStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotLinearregressionStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotLinearregressionStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotLinearregressionStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotLinearregressionStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotLinearregressionStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotLinearregressionTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotLinearregressionTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotLinearregressionTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) Number of decimals in indicator series. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotLinearregressionZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotLineConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotLineConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotLineConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotLineConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotLineConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotLineConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotLineConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotLineDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts, Highstock) Options for the drag handles. */ export interface PlotLineDragDropDragHandleOptions { /** * (Highcharts, Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts, Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The mouse cursor to use for the drag handles. By * default this is intelligently switching between `ew-resize` and * `ns-resize` depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts, Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts, Highstock) Function to define the SVG path to use for the * drag handles. Takes the point as argument. Should return an SVG path in * array format. The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts, Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box default state. */ export interface PlotLineDragDropGuideBoxDefaultOptions { /** * (Highcharts, Highstock) CSS class name of the guide box in this state. * Defaults to `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts, Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Guide box cursor. */ cursor?: string; /** * (Highcharts, Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts, Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts, Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box. The guide box has * one state by default, the `default` state. */ export interface PlotLineDragDropGuideBoxOptions { /** * (Highcharts, Highstock) Style options for the guide box default state. */ default?: PlotLineDragDropGuideBoxDefaultOptions; } /** * (Highcharts, Highstock) The draggable-points module allows points to be moved * around or modified in the chart. In addition to the options mentioned under * the `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotLineDragDropOptions { /** * (Highcharts, Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts, Highstock) Enable dragging in the Y dimension. Note that * this is not supported for TreeGrid axes (the default axis type in Gantt * charts). */ draggableY?: boolean; /** * (Highcharts, Highstock) Options for the drag handles. */ dragHandle?: PlotLineDragDropDragHandleOptions; /** * (Highcharts, Highstock) Set the maximum X value the points can be moved * to. */ dragMaxX?: number; /** * (Highcharts, Highstock) Set the maximum Y value the points can be moved * to. */ dragMaxY?: number; /** * (Highcharts, Highstock) Set the minimum X value the points can be moved * to. */ dragMinX?: number; /** * (Highcharts, Highstock) Set the minimum Y value the points can be moved * to. */ dragMinY?: number; /** * (Highcharts, Highstock) The X precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionX?: number; /** * (Highcharts, Highstock) The Y precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionY?: number; /** * (Highcharts, Highstock) The amount of pixels to drag the pointer before * it counts as a drag operation. This prevents drag/drop to fire when just * clicking or selecting points. */ dragSensitivity?: number; /** * (Highcharts, Highstock) Group the points by a property. Points with the * same property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts, Highstock) Style options for the guide box. The guide box * has one state by default, the `default` state. */ guideBox?: (PlotLineDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts, Highstock) Update points as they are dragged. If false, a * guide box is drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock) General event handlers for the series items. These * event hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotLineEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts, Highstock) Fires when the checkbox next to the series' name * in the legend is clicked. One parameter, `event`, is passed to the * function. The state of the checkbox is found by `event.checked`. The * checked item is found by `event.item`. Return `false` to prevent the * default action which is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is clicked. One parameter, * `event`, is passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is hidden after chart * generation time, either by clicking the legend item or by calling * `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts, Highstock) Fires when the legend item belonging to the * series is clicked. One parameter, `event`, is passed to the function. The * default action is to toggle the visibility of the series. This can be * prevented by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse leaves the graph. One * parameter, `event`, is passed to the function, containing common event * information. If the stickyTracking option is true, `mouseOut` doesn't * happen before the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse enters the graph. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is shown after chart * generation time, either by clicking the legend item or by calling * `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotLineLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotLineLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotLineLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotLineLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotLineLastVisiblePriceLabelOptions; } /** * (Highcharts, Highstock) Options for the point markers of line-like series. * Properties like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't have * markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotLineMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotLineMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotLineMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotLineMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotLineMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotLineMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotLineMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotLineMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotLineMarkerStatesHoverOptions; inactive?: PlotLineMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotLineMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotLineMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotLineMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts, Highstock) A line series displays information as a series of * data points connected by straight line segments. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `line` series are defined in plotOptions.line. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotLineOptions { /** * (Highcharts, Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotLineAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highcharts, Highstock) Allow this series' points to be selected by * clicking on the graphic (columns, point markers, pie slices, map areas * etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts, Highstock) Enable or disable the initial animation when a * series is displayed. The animation can also be set as a configuration * object. Please note that this option only applies to the initial * animation of the series itself. For other animations, see chart.animation * and the animation parameter under the API methods. The following * properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotLineAnimationOptions); /** * (Highcharts, Highstock) For some series, there is a limit that shuts down * initial animation by default when the total number of points in the chart * is too high. For example, for a column chart and its derivatives, * animation does not run if there is more than 250 points totally. To * disable this cap, set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highcharts, Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts, Highstock) Set the point threshold for when a series should * enter boost mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highcharts, Highstock) An additional class name to apply to the series' * graphical elements. This option does not replace default class names of * the graphical element. */ className?: string; /** * (Highcharts, Highstock) Disable this option to allow series rendering in * the whole plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts, Highstock) The main color of the series. In line type series * it applies to the line and the point markers unless otherwise specified. * In bar type series it applies to the bars unless a color is specified per * point. The default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts, Highstock) Styled mode only. A specific color index to use * for the series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotLineConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highcharts, Highstock) You can set the cursor to "pointer" if you have * click events attached to the series, to signal to the user that the * points and lines can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highcharts, Highstock) A name for the dash style to use for the graph, * or for some series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotLineDataGroupingOptions; /** * (Highcharts, Highstock) Options for the series data labels, appearing * next to each data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts, Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts, Highstock) The draggable-points module allows points to be * moved around or modified in the chart. In addition to the options * mentioned under the `dragDrop` API structure, the module fires three * events, point.dragStart, point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotLineDragDropOptions; /** * (Highcharts, Highstock) Enable or disable the mouse tracking for a * specific series. This includes point tooltips and click events on graphs * and points. For large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts, Highstock) General event handlers for the series items. * These event hooks can also be attached to the series at run time using * the `Highcharts.addEvent` function. */ events?: PlotLineEventsOptions; /** * (Highcharts, Highstock) By default, series are exposed to screen readers * as regions. By enabling this option, the series element itself will be * exposed in the same way as the data points. This is useful if the series * is not used as a grouping entity in the chart, but you still want to * attach a description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highcharts, Highstock) Determines whether the series should look for the * nearest point in both dimensions or just the x-dimension when hovering * the series. Defaults to `'xy'` for scatter series and `'x'` for most * other series. If the data has duplicate x-values, it is recommended to * set this to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highcharts, Highstock) Export-data module required. When set to `false` * will prevent the series data from being included in any form of data * export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts, Highstock) An array specifying which option maps to which * key in the data point array. This makes it convenient to work with * unstructured data arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotLineLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotLineLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotLineLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts, Highstock) Options for the point markers of line-like * series. Properties like `fillColor`, `lineColor` and `lineWidth` define * the visual appearance of the markers. Other series types, like column * series, don't have markers, but have visual options on the series level * instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotLineMarkerOptions; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts, Highstock) The color for the parts of the graph or points * that are below the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Opacity of a series parts: line, fill (e.g. area) * and dataLabels. */ opacity?: number; /** * (Highcharts, Highstock) Properties for each single point. */ point?: PlotLinePointOptions; /** * (Highcharts, Highstock) Same as accessibility.pointDescriptionFormatter, * but for an individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, `pointInterval` defines the interval of the x values. For * example, if a series contains one value every decade starting from year * 0, set `pointInterval` to `10`. In true `datetime` axes, the * `pointInterval` is set in milliseconds. * * It can be also be combined with `pointIntervalUnit` to draw irregular * time intervals. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointInterval?: number; /** * (Highcharts, Highstock, Gantt) On datetime series, this allows for * setting the pointInterval to irregular time units, `day`, `month` and * `year`. A day is usually the same as 24 hours, but `pointIntervalUnit` * also takes the DST crossover into consideration when dealing with local * time. Combine this option with `pointInterval` to draw weeks, quarters, 6 * months, 10 years etc. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointIntervalUnit?: OptionsPointIntervalUnitValue; /** * (Highcharts, Highstock, Gantt) Possible values: `"on"`, `"between"`, * `number`. * * In a column chart, when pointPlacement is `"on"`, the point will not * create any padding of the X axis. In a polar column chart this means that * the first column points directly north. If the pointPlacement is * `"between"`, the columns will be laid out between ticks. This is useful * for example for visualising an amount between two points in time or in a * certain sector of a polar chart. * * Since Highcharts 3.0.2, the point placement can also be numeric, where 0 * is on the axis value, -0.5 is between this value and the previous, and * 0.5 is between this value and the next. Unlike the textual options, * numeric point placement options won't affect axis padding. * * Note that pointPlacement needs a pointRange to work. For column series * this is computed, but for line-type series it needs to be set. * * For the `xrange` series type and gantt charts, if the Y axis is a * category axis, the `pointPlacement` applies to the Y axis rather than the * (typically datetime) X axis. * * Defaults to `undefined` in cartesian charts, `"between"` in polar charts. */ pointPlacement?: (number|string); /** * (Highstock) The width of each point on the x axis. For example in a * column chart with one value each day, the pointRange would be 1 day (= 24 * * 3600 * * * 1000 milliseconds). This is normally computed automatically, but this * option can be used to override the automatic value. */ pointRange?: number; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, pointStart defines on what value to start. For example, if a * series contains one yearly value starting from 1945, set pointStart to * 1945. */ pointStart?: number; /** * (Highcharts, Highstock) Whether to select the series initially. If * `showCheckbox` is true, the checkbox next to the series name in the * legend will be checked for a selected series. */ selected?: boolean; /** * (Highcharts, Highstock) Whether to apply a drop shadow to the graph line. * Since 2.3 the shadow can be an object configuration containing `color`, * `offsetX`, `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highcharts, Highstock) If true, a checkbox is displayed next to the * legend item to allow selecting the series. The state of the checkbox is * determined by the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts, Highstock) Whether to display this particular series or * series type in the legend. The default value is `true` for standalone * series, `false` for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts, Highstock) If set to `true`, the accessibility module will * skip past the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; /** * (Highcharts, Highstock) Whether to stack the values of each series on top * of each other. Possible values are `undefined` to disable, `"normal"` to * stack by value or `"percent"`. When stacking is enabled, data must be * sorted in ascending X order. A special stacking option is with the * streamgraph series type, where the stacking option is set to `"stream"`. * The second one is `"overlap"`, which only applies to waterfall series. */ stacking?: OptionsStackingValue; states?: PlotLineStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highcharts, Highstock) Sticky tracking of mouse events. When true, the * `mouseOut` event on a series isn't triggered until the mouse moves over * another series, or out of the plot area. When false, the `mouseOut` event * on a series is triggered when the mouse leaves the area around the * series' graph or markers. This also implies the tooltip when not shared. * When `stickyTracking` is false and `tooltip.shared` is false, the tooltip * will be hidden when moving the mouse between series. Defaults to true for * line and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highcharts, Highstock) A configuration object for the tooltip rendering * of each single series. Properties are inherited from tooltip, but only * the following properties can be defined on a series level. */ tooltip?: PlotLineTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) The parameter allows setting line series type and use OHLC * indicators. Data in OHLC format is required. */ useOhlcData?: boolean; /** * (Highcharts, Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotLineZonesOptions>; } /** * (Highcharts, Highstock) Events for each single point. */ export interface PlotLinePointEventsOptions { /** * (Highcharts, Highstock) Fires when a point is clicked. One parameter, * `event`, is passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock) Callback that fires while dragging a point. The * mouse event is passed in as parameter. The original data can be accessed * from `e.origin`, and the new point values can be accessed from * `e.newPoints`. If there is only a single point being updated, it can be * accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock) Callback that fires when starting to drag a * point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock) Callback that fires when the point is dropped. * The parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse leaves the area close to the * point. One parameter, `event`, is passed to the function, containing * common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse enters the area close to the * point. One parameter, `event`, is passed to the function, containing * common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is updated programmatically * through the `.update()` method. One parameter, `event`, is passed to the * function. The new point options can be accessed through `event.options`. * Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts, Highstock) Properties for each single point. */ export interface PlotLinePointOptions { /** * (Highcharts, Highstock) Events for each single point. */ events?: PlotLinePointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotLineStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotLineStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotLineStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotLineStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotLineStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotLineStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotLineStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotLineStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotLineStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotLineStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotLineStatesHoverMarkerStatesHoverOptions; inactive?: PlotLineStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotLineStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotLineStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotLineStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts, Highstock) Options for the hovered series. These settings * override the normal state options when a series is moused over or touched. */ export interface PlotLineStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotLineStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Enable separate styles for the hovered series to * visualize that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotLineStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotLineStatesHoverMarkerOptions; } export interface PlotLineStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The opposite state of a hover for series. */ export interface PlotLineStatesInactiveOptions { animation?: PlotLineStatesInactiveAnimationOptions; /** * (Highcharts, Highstock) Opacity of series elements (dataLabels, line, * area). */ opacity?: number; } /** * (Highcharts, Highstock) The normal state of a series, or for point items in * column, pie and similar series. Currently only used for setting animation * when returning to normal state from hover. */ export interface PlotLineStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotLineStatesOptions { /** * (Highcharts, Highstock) Options for the hovered series. These settings * override the normal state options when a series is moused over or * touched. */ hover?: PlotLineStatesHoverOptions; /** * (Highcharts, Highstock) The opposite state of a hover for series. */ inactive?: PlotLineStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a series, or for point items * in column, pie and similar series. Currently only used for setting * animation when returning to normal state from hover. */ normal?: PlotLineStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotLineStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotLineStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotLineStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotLineStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotLineStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotLineStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotLineStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotLineStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotLineStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotLineStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotLineStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotLineStatesSelectMarkerStatesHoverOptions; inactive?: PlotLineStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotLineStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotLineStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotLineStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotLineStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotLineStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotLineStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotLineStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotLineTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts, Highstock) A configuration object for the tooltip rendering of * each single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ export interface PlotLineTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotLineTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highcharts, Highstock) Whether the tooltip should follow the mouse as it * moves across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts, Highstock) Whether the tooltip should update as the finger * moves on a touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts, Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts, Highstock) The HTML of the tooltip header line. Variables * are enclosed by curly brackets. Available variables are `point.key`, * `series.name`, `series.color` and other members from the `point` and * `series` objects. The `point.key` variable contains the category name, x * value or datetime string depending on the type of axis. For datetime * axes, the `point.key` date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts, Highstock) The name of a symbol to use for the border around * the tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts, Highstock) The number of milliseconds to wait until the * tooltip is hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts, Highstock) The HTML of the null point's line in the tooltip. * Works analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts, Highstock) Callback function to format the text of the * tooltip for visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts, Highstock) Whether to allow the tooltip to render outside * the chart's SVG element box. By default (`false`), the tooltip is * rendered within the chart's SVG element, which results in the tooltip * being aligned inside the chart area. For small charts, this may result in * clipping or overlapping. When `true`, a separate SVG element is created * and overlaid on the page, allowing the tooltip to be aligned inside the * page itself. */ outside?: boolean; /** * (Highcharts, Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts, Highstock) The HTML of the point's line in the tooltip. * Variables are enclosed by curly brackets. Available variables are * point.x, point.y, series. name and series.color and other properties on * the same form. Furthermore, `point.y` can be extended by the * `tooltip.valuePrefix` and `tooltip.valueSuffix` variables. This can also * be overridden for each series, which makes it a good hook for displaying * units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts, Highstock) A callback function for formatting the HTML * output for a single point in the tooltip. Like the `pointFormat` string, * but with more flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts, Highstock) How many decimals to show in each series' y * value. This is overridable in each series' tooltip options object. The * default is to preserve all decimals. */ valueDecimals?: number; /** * (Highcharts, Highstock) A string to prepend to each series' y value. * Overridable in each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts, Highstock) A string to append to each series' y value. * Overridable in each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotLineZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotMacdAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotMacdAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotMacdAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotMacdAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotMacdConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotMacdConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotMacdConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotMacdConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotMacdConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotMacdConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotMacdConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotMacdDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: string; /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotMacdDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotMacdDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotMacdDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotMacdDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotMacdDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotMacdDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotMacdDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotMacdEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotMacdLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotMacdLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotMacdLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotMacdLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotMacdLastVisiblePriceLabelOptions; } /** * (Highstock) The styles for macd line */ export interface PlotMacdMacdLineOptions { styles?: PlotMacdMacdLineStylesOptions; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotMacdMacdLineZonesOptions>; } export interface PlotMacdMacdLineStylesOptions { /** * (Highstock) Color of the line. */ lineColor?: ColorString; /** * (Highstock) Pixel width of the line. */ lineWidth?: number; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotMacdMacdLineZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotMacdMarkerOptions { /** * (Highstock) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highstock) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highstock) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. */ radius?: number; /** * (Highstock) States for a single point marker. */ states?: PlotMacdMarkerStatesOptions; /** * (Highstock) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highstock) Animation when hovering over the marker. */ export interface PlotMacdMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highstock) The hover state for a single point marker. */ export interface PlotMacdMarkerStatesHoverOptions { /** * (Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotMacdMarkerStatesHoverAnimationOptions); /** * (Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highstock) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotMacdMarkerStatesInactiveOptions { /** * (Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highstock) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotMacdMarkerStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highstock) States for a single point marker. */ export interface PlotMacdMarkerStatesOptions { /** * (Highstock) The hover state for a single point marker. */ hover?: PlotMacdMarkerStatesHoverOptions; inactive?: PlotMacdMarkerStatesInactiveOptions; /** * (Highstock) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotMacdMarkerStatesNormalOptions; /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotMacdMarkerStatesSelectOptions; } /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotMacdMarkerStatesSelectOptions { /** * (Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Moving Average Convergence Divergence (MACD). This series * requires `linkedTo` option to be set and should be loaded after the * `stock/indicators/indicators.js` and `stock/indicators/ema.js`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `macd` series are defined in plotOptions.macd. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotMacdOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotMacdAccessibilityOptions); /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotMacdAnimationOptions); /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highstock) Whether to compare indicator to the main series values or * indicator values. */ compareToMain?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotMacdConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotMacdDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotMacdDragDropOptions; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotMacdEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; groupPadding?: number; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotMacdLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotMacdLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotMacdLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The main series ID that indicator will be * based on. Required for this indicator. */ linkedTo?: string; /** * (Highstock) The styles for macd line */ macdLine?: PlotMacdMacdLineOptions; /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotMacdMarkerOptions; minPointLength?: number; /** * (Highstock) The name of the series as shown in the legend, tooltip etc. * If not set, it will be based on a technical indicator type and default * params. */ name?: string; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Paramters used in calculation of regression series' points. */ params?: PlotMacdParamsOptions; /** * (Highstock) Properties for each single point. */ point?: PlotMacdPointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; pointPadding?: number; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) The styles for signal line */ signalLine?: PlotMacdSignalLineOptions; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotMacdStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotMacdTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotMacdZonesOptions>; } /** * (Highstock) Paramters used in calculation of regression series' points. */ export interface PlotMacdParamsOptions { /** * (Highstock) The point index which indicator calculations will base. For * example using OHLC data, index=2 means the indicator will be calculated * using Low values. */ index?: number; /** * (Highstock) The long period for indicator calculations. */ longPeriod?: number; /** * (Highstock) The base period for indicator calculations. This is the * number of data points which are taken into account for the indicator * calculations. */ period?: number; /** * (Highstock) The short period for indicator calculations. */ shortPeriod?: number; /** * (Highstock) The base period for signal calculations. */ signalPeriod?: number; } /** * (Highstock) Events for each single point. */ export interface PlotMacdPointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotMacdPointOptions { /** * (Highstock) Events for each single point. */ events?: PlotMacdPointEventsOptions; } /** * (Highstock) The styles for signal line */ export interface PlotMacdSignalLineOptions { styles?: PlotMacdSignalLineStylesOptions; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotMacdSignalLineZonesOptions>; } export interface PlotMacdSignalLineStylesOptions { /** * (Highstock) Color of the line. */ lineColor?: ColorString; /** * (Highstock) Pixel width of the line. */ lineWidth?: number; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotMacdSignalLineZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotMacdStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotMacdStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotMacdStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotMacdStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotMacdStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotMacdStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotMacdStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotMacdStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotMacdStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotMacdStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotMacdStatesHoverMarkerStatesHoverOptions; inactive?: PlotMacdStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotMacdStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotMacdStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotMacdStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotMacdStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotMacdStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: PlotMacdStatesHoverHaloOptions; /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotMacdStatesHoverMarkerOptions; } export interface PlotMacdStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotMacdStatesInactiveOptions { animation?: PlotMacdStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotMacdStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotMacdStatesOptions { /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotMacdStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotMacdStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotMacdStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotMacdStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotMacdStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotMacdStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotMacdStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotMacdStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotMacdStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotMacdStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotMacdStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotMacdStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotMacdStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotMacdStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotMacdStatesSelectMarkerStatesHoverOptions; inactive?: PlotMacdStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotMacdStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotMacdStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotMacdStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotMacdStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotMacdStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotMacdStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotMacdStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotMacdTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotMacdTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotMacdTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) Number of decimals in indicator series. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotMacdZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highmaps) Keyboard navigation for a series */ export interface PlotMapAccessibilityKeyboardNavigationOptions { /** * (Highmaps) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highmaps) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotMapAccessibilityOptions { /** * (Highmaps) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highmaps) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highmaps) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highmaps) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotMapAccessibilityKeyboardNavigationOptions); /** * (Highmaps) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highmaps) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotMapAnimationOptions { duration?: number; } /** * (Highmaps) Keyboard navigation for a series */ export interface PlotMapbubbleAccessibilityKeyboardNavigationOptions { /** * (Highmaps) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highmaps) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotMapbubbleAccessibilityOptions { /** * (Highmaps) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highmaps) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highmaps) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highmaps) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotMapbubbleAccessibilityKeyboardNavigationOptions); /** * (Highmaps) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highmaps) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotMapbubbleAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotMapbubbleConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotMapbubbleConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotMapbubbleConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotMapbubbleConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotMapbubbleConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotMapbubbleConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotMapbubbleConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotMapbubbleDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highmaps) Options for the drag handles. */ export interface PlotMapbubbleDragDropDragHandleOptions { /** * (Highmaps) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highmaps) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highmaps) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highmaps) The line width for the drag handles. */ lineWidth?: number; /** * (Highmaps) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highmaps) The z index for the drag handles. */ zIndex?: number; } /** * (Highmaps) Style options for the guide box default state. */ export interface PlotMapbubbleDragDropGuideBoxDefaultOptions { /** * (Highmaps) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highmaps) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Guide box cursor. */ cursor?: string; /** * (Highmaps) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highmaps) Width of the line around the guide box. */ lineWidth?: number; /** * (Highmaps) Guide box zIndex. */ zIndex?: number; } /** * (Highmaps) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotMapbubbleDragDropGuideBoxOptions { /** * (Highmaps) Style options for the guide box default state. */ default?: PlotMapbubbleDragDropGuideBoxDefaultOptions; } /** * (Highmaps) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotMapbubbleDragDropOptions { /** * (Highmaps) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highmaps) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highmaps) Options for the drag handles. */ dragHandle?: PlotMapbubbleDragDropDragHandleOptions; /** * (Highmaps) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highmaps) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highmaps) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highmaps) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highmaps) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highmaps) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highmaps) The amount of pixels to drag the pointer before it counts as a * drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highmaps) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highmaps) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotMapbubbleDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highmaps) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highmaps) General event handlers for the series items. These event hooks can * also be attached to the series at run time using the `Highcharts.addEvent` * function. */ export interface PlotMapbubbleEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highmaps) Fires when the checkbox next to the series' name in the legend * is clicked. One parameter, `event`, is passed to the function. The state * of the checkbox is found by `event.checked`. The checked item is found by * `event.item`. Return `false` to prevent the default action which is to * toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highmaps) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highmaps) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highmaps) Fires when the legend item belonging to the series is clicked. * One parameter, `event`, is passed to the function. The default action is * to toggle the visibility of the series. This can be prevented by * returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highmaps) Fires when the mouse leaves the graph. One parameter, `event`, * is passed to the function, containing common event information. If the * stickyTracking option is true, `mouseOut` doesn't happen before the mouse * enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highmaps) Fires when the mouse enters the graph. One parameter, `event`, * is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highmaps) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock) Apply a jitter effect for the rendered markers. When * plotting discrete values, a little random noise may help telling the points * apart. The jitter setting applies a random displacement of up to `n` axis * units in either direction. So for example on a horizontal X axis, setting the * `jitter.x` to 0.24 will render the point in a random position between 0.24 * units to the left and 0.24 units to the right of the true axis position. On a * category axis, setting it to 0.5 will fill up the bin and make the data * appear continuous. * * When rendered on top of a box plot or a column series, a jitter value of 0.24 * will correspond to the underlying series' default groupPadding and * pointPadding settings. */ export interface PlotMapbubbleJitterOptions { /** * (Highcharts, Highstock) The maximal X offset for the random jitter * effect. */ x?: number; /** * (Highcharts, Highstock) The maximal Y offset for the random jitter * effect. */ y?: number; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotMapbubbleLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotMapbubbleLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotMapbubbleLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotMapbubbleLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotMapbubbleLastVisiblePriceLabelOptions; } /** * (Highmaps) Options for the point markers of line-like series. Properties like * `fillColor`, `lineColor` and `lineWidth` define the visual appearance of the * markers. Other series types, like column series, don't have markers, but have * visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotMapbubbleMarkerOptions { /** * (Highmaps) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) The fill opacity of the bubble markers. */ fillOpacity?: number; /** * (Highmaps) The color of the point marker's outline. When `undefined`, the * series' or point's color is used. */ lineColor?: any; /** * (Highmaps) The width of the point marker's outline. */ lineWidth?: number; /** * (Highmaps) States for a single point marker. */ states?: PlotMapbubbleMarkerStatesOptions; /** * (Highmaps) A predefined shape or symbol for the marker. Possible values * are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on the form * `url(graphic.png)`. Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: (string|SymbolKeyValue); } /** * (Highmaps) Animation when hovering over the marker. */ export interface PlotMapbubbleMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highmaps) The hover state for a single point marker. */ export interface PlotMapbubbleMarkerStatesHoverOptions { /** * (Highmaps) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotMapbubbleMarkerStatesHoverAnimationOptions); /** * (Highmaps) Enable or disable the point marker. */ enabled?: boolean; /** * (Highmaps) The fill color of the marker in hover state. When `undefined`, * the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) The color of the point marker's outline. When `undefined`, the * series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highmaps) The width of the point marker's outline. When `undefined`, the * series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highmaps) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highmaps) The radius of the point marker. In hover state, it defaults to * the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highmaps) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotMapbubbleMarkerStatesInactiveOptions { /** * (Highmaps) Opacity of inactive markers. */ opacity?: any; } /** * (Highmaps) The normal state of a single point marker. Currently only used for * setting animation when returning to normal state from hover. */ export interface PlotMapbubbleMarkerStatesNormalOptions { /** * (Highmaps) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highmaps) States for a single point marker. */ export interface PlotMapbubbleMarkerStatesOptions { /** * (Highmaps) The hover state for a single point marker. */ hover?: PlotMapbubbleMarkerStatesHoverOptions; inactive?: PlotMapbubbleMarkerStatesInactiveOptions; /** * (Highmaps) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ normal?: PlotMapbubbleMarkerStatesNormalOptions; /** * (Highmaps) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotMapbubbleMarkerStatesSelectOptions; } /** * (Highmaps) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotMapbubbleMarkerStatesSelectOptions { /** * (Highmaps) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highmaps) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) The color of the point marker's outline. When `undefined`, the * series' or point's color is used. */ lineColor?: ColorString; /** * (Highmaps) The width of the point marker's outline. */ lineWidth?: number; /** * (Highmaps) The radius of the point marker. In hover state, it defaults to * the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) A map bubble series is a bubble series laid out on top of a map * series, where each bubble is tied to a specific map area. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `mapbubble` series are defined in plotOptions.mapbubble. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotMapbubbleOptions { /** * (Highmaps) Accessibility options for a series. Requires the accessibility * module. */ accessibility?: (object|PlotMapbubbleAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highmaps) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highmaps) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotMapbubbleAnimationOptions); /** * (Highmaps) If there are more points in the series than the * `animationLimit`, the animation won't run. Animation affects overall * performance and doesn't work well with heavy data series. */ animationLimit?: number; /** * (Highmaps) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highmaps) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highmaps) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highmaps) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highmaps) The main color of the series. This color affects both the fill * and the stroke of the bubble. For enhanced control, use `marker` options. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highmaps) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotMapbubbleConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highmaps) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highmaps) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotMapbubbleDataGroupingOptions; /** * (Highmaps) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highmaps) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highmaps) Whether to display negative sized bubbles. The threshold is * given by the zThreshold option, and negative bubbles can be visualized by * setting negativeColor. */ displayNegative?: boolean; /** * (Highmaps) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotMapbubbleDragDropOptions; /** * (Highmaps) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highmaps) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotMapbubbleEventsOptions; /** * (Highmaps) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highmaps) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highmaps) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock) Apply a jitter effect for the rendered markers. * When plotting discrete values, a little random noise may help telling the * points apart. The jitter setting applies a random displacement of up to * `n` axis units in either direction. So for example on a horizontal X * axis, setting the `jitter.x` to 0.24 will render the point in a random * position between 0.24 units to the left and 0.24 units to the right of * the true axis position. On a category axis, setting it to 0.5 will fill * up the bin and make the data appear continuous. * * When rendered on top of a box plot or a column series, a jitter value of * 0.24 will correspond to the underlying series' default groupPadding and * pointPadding settings. */ jitter?: PlotMapbubbleJitterOptions; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highmaps) An array specifying which option maps to which key in the data * point array. This makes it convenient to work with unstructured data * arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotMapbubbleLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotMapbubbleLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotMapbubbleLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) The width of the line connecting the data points. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highmaps) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotMapbubbleMarkerOptions; /** * (Highcharts, Highstock) Maximum bubble size. Bubbles will automatically * size between the `minSize` and `maxSize` to reflect the `z` value of each * bubble. Can be either pixels (when no unit is given), or a percentage of * the smallest one of the plot width and height. */ maxSize?: (number|string); /** * (Highcharts, Highstock) Minimum bubble size. Bubbles will automatically * size between the `minSize` and `maxSize` to reflect the `z` value of each * bubble. Can be either pixels (when no unit is given), or a percentage of * the smallest one of the plot width and height. */ minSize?: (number|string); /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts) When a point's Z value is below the zThreshold setting, this * color is used. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highmaps) Properties for each single point. */ point?: PlotMapbubblePointOptions; /** * (Highmaps) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, `pointInterval` defines the interval of the x values. For * example, if a series contains one value every decade starting from year * 0, set `pointInterval` to `10`. In true `datetime` axes, the * `pointInterval` is set in milliseconds. * * It can be also be combined with `pointIntervalUnit` to draw irregular * time intervals. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointInterval?: number; /** * (Highcharts, Highstock, Gantt) On datetime series, this allows for * setting the pointInterval to irregular time units, `day`, `month` and * `year`. A day is usually the same as 24 hours, but `pointIntervalUnit` * also takes the DST crossover into consideration when dealing with local * time. Combine this option with `pointInterval` to draw weeks, quarters, 6 * months, 10 years etc. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointIntervalUnit?: OptionsPointIntervalUnitValue; /** * (Highstock) The width of each point on the x axis. For example in a * column chart with one value each day, the pointRange would be 1 day (= 24 * * 3600 * * * 1000 milliseconds). This is normally computed automatically, but this * option can be used to override the automatic value. */ pointRange?: number; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, pointStart defines on what value to start. For example, if a * series contains one yearly value starting from 1945, set pointStart to * 1945. */ pointStart?: number; /** * (Highmaps) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highmaps) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highmaps) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highmaps) Whether the bubble's value should be represented by the area * or the width of the bubble. The default, `area`, corresponds best to the * human perception of the size of each bubble. */ sizeBy?: BubbleSizeByValue; /** * (Highcharts) When this is true, the absolute value of z determines the * size of the bubble. This means that with the default `zThreshold` of 0, a * bubble of value -1 will have the same size as a bubble of value 1, while * a bubble of value 0 will have a smaller size according to `minSize`. */ sizeByAbsoluteValue?: boolean; /** * (Highmaps) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts) When this is true, the series will not cause the Y axis to * cross the zero plane (or threshold option) unless the data actually * crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; /** * (Highcharts, Highstock) Whether to stack the values of each series on top * of each other. Possible values are `undefined` to disable, `"normal"` to * stack by value or `"percent"`. When stacking is enabled, data must be * sorted in ascending X order. A special stacking option is with the * streamgraph series type, where the stacking option is set to `"stream"`. * The second one is `"overlap"`, which only applies to waterfall series. */ stacking?: OptionsStackingValue; states?: PlotMapbubbleStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highcharts, Highstock) Sticky tracking of mouse events. When true, the * `mouseOut` event on a series isn't triggered until the mouse moves over * another series, or out of the plot area. When false, the `mouseOut` event * on a series is triggered when the mouse leaves the area around the * series' graph or markers. This also implies the tooltip. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highcharts, Highstock) A configuration object for the tooltip rendering * of each single series. Properties are inherited from tooltip. Overridable * properties are `headerFormat`, `pointFormat`, `yDecimals`, `xDateFormat`, * `yPrefix` and `ySuffix`. Unlike other series, in a scatter plot the * series.name by default shows in the headerFormat and point.x and point.y * in the pointFormat. */ tooltip?: PlotMapbubbleTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highmaps) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts) The minimum for the Z value range. Defaults to the highest Z * value in the data. */ zMax?: number; /** * (Highcharts) The minimum for the Z value range. Defaults to the lowest Z * value in the data. */ zMin?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotMapbubbleZonesOptions>; /** * (Highcharts) When displayNegative is `false`, bubbles with lower Z values * are skipped. When `displayNegative` is `true` and a negativeColor is * given, points with lower Z is colored. */ zThreshold?: number; } /** * (Highmaps) Events for each single point. */ export interface PlotMapbubblePointEventsOptions { /** * (Highmaps) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highmaps) Callback that fires while dragging a point. The mouse event is * passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highmaps) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highmaps) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highmaps) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highmaps) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highmaps) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highmaps) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highmaps) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highmaps) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highmaps) Properties for each single point. */ export interface PlotMapbubblePointOptions { /** * (Highmaps) Events for each single point. */ events?: PlotMapbubblePointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotMapbubbleStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotMapbubbleStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotMapbubbleStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotMapbubbleStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotMapbubbleStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotMapbubbleStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotMapbubbleStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotMapbubbleStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotMapbubbleStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotMapbubbleStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotMapbubbleStatesHoverMarkerStatesHoverOptions; inactive?: PlotMapbubbleStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotMapbubbleStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotMapbubbleStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotMapbubbleStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Options for the hovered series. These settings override the normal * state options when a series is moused over or touched. */ export interface PlotMapbubbleStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotMapbubbleStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: PlotMapbubbleStatesHoverHaloOptions; /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotMapbubbleStatesHoverMarkerOptions; } export interface PlotMapbubbleStatesInactiveAnimationOptions { duration?: number; } /** * (Highmaps) The opposite state of a hover for series. */ export interface PlotMapbubbleStatesInactiveOptions { animation?: PlotMapbubbleStatesInactiveAnimationOptions; /** * (Highmaps) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highmaps) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotMapbubbleStatesNormalOptions { /** * (Highmaps) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotMapbubbleStatesOptions { /** * (Highmaps) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotMapbubbleStatesHoverOptions; /** * (Highmaps) The opposite state of a hover for series. */ inactive?: PlotMapbubbleStatesInactiveOptions; /** * (Highmaps) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotMapbubbleStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotMapbubbleStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotMapbubbleStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotMapbubbleStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotMapbubbleStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotMapbubbleStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotMapbubbleStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotMapbubbleStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotMapbubbleStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotMapbubbleStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotMapbubbleStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotMapbubbleStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotMapbubbleStatesSelectMarkerStatesHoverOptions; inactive?: PlotMapbubbleStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotMapbubbleStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotMapbubbleStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotMapbubbleStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotMapbubbleStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotMapbubbleStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotMapbubbleStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotMapbubbleStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotMapbubbleTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts, Highstock) A configuration object for the tooltip rendering of * each single series. Properties are inherited from tooltip. Overridable * properties are `headerFormat`, `pointFormat`, `yDecimals`, `xDateFormat`, * `yPrefix` and `ySuffix`. Unlike other series, in a scatter plot the * series.name by default shows in the headerFormat and point.x and point.y in * the pointFormat. */ export interface PlotMapbubbleTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotMapbubbleTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highcharts, Highstock) Whether the tooltip should follow the mouse as it * moves across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts, Highstock) Whether the tooltip should update as the finger * moves on a touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts, Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts, Highstock) The HTML of the tooltip header line. Variables * are enclosed by curly brackets. Available variables are `point.key`, * `series.name`, `series.color` and other members from the `point` and * `series` objects. The `point.key` variable contains the category name, x * value or datetime string depending on the type of axis. For datetime * axes, the `point.key` date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts, Highstock) The name of a symbol to use for the border around * the tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts, Highstock) The number of milliseconds to wait until the * tooltip is hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts, Highstock) The HTML of the null point's line in the tooltip. * Works analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts, Highstock) Callback function to format the text of the * tooltip for visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts, Highstock) Whether to allow the tooltip to render outside * the chart's SVG element box. By default (`false`), the tooltip is * rendered within the chart's SVG element, which results in the tooltip * being aligned inside the chart area. For small charts, this may result in * clipping or overlapping. When `true`, a separate SVG element is created * and overlaid on the page, allowing the tooltip to be aligned inside the * page itself. */ outside?: boolean; /** * (Highcharts, Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts, Highstock) The HTML of the point's line in the tooltip. * Variables are enclosed by curly brackets. Available variables are * point.x, point.y, series. name and series.color and other properties on * the same form. Furthermore, `point.y` can be extended by the * `tooltip.valuePrefix` and `tooltip.valueSuffix` variables. This can also * be overridden for each series, which makes it a good hook for displaying * units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts, Highstock) A callback function for formatting the HTML * output for a single point in the tooltip. Like the `pointFormat` string, * but with more flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts, Highstock) How many decimals to show in each series' y * value. This is overridable in each series' tooltip options object. The * default is to preserve all decimals. */ valueDecimals?: number; /** * (Highcharts, Highstock) A string to prepend to each series' y value. * Overridable in each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts, Highstock) A string to append to each series' y value. * Overridable in each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotMapbubbleZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotMapConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotMapConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotMapConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotMapConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotMapConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotMapConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotMapConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotMapDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highmaps) Options for the drag handles. */ export interface PlotMapDragDropDragHandleOptions { /** * (Highmaps) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highmaps) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highmaps) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highmaps) The line width for the drag handles. */ lineWidth?: number; /** * (Highmaps) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highmaps) The z index for the drag handles. */ zIndex?: number; } /** * (Highmaps) Style options for the guide box default state. */ export interface PlotMapDragDropGuideBoxDefaultOptions { /** * (Highmaps) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highmaps) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Guide box cursor. */ cursor?: string; /** * (Highmaps) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highmaps) Width of the line around the guide box. */ lineWidth?: number; /** * (Highmaps) Guide box zIndex. */ zIndex?: number; } /** * (Highmaps) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotMapDragDropGuideBoxOptions { /** * (Highmaps) Style options for the guide box default state. */ default?: PlotMapDragDropGuideBoxDefaultOptions; } /** * (Highmaps) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotMapDragDropOptions { /** * (Highmaps) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highmaps) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highmaps) Options for the drag handles. */ dragHandle?: PlotMapDragDropDragHandleOptions; /** * (Highmaps) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highmaps) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highmaps) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highmaps) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highmaps) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highmaps) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highmaps) The amount of pixels to drag the pointer before it counts as a * drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highmaps) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highmaps) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotMapDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highmaps) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highmaps) General event handlers for the series items. These event hooks can * also be attached to the series at run time using the `Highcharts.addEvent` * function. */ export interface PlotMapEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highmaps) Fires when the checkbox next to the series' name in the legend * is clicked. One parameter, `event`, is passed to the function. The state * of the checkbox is found by `event.checked`. The checked item is found by * `event.item`. Return `false` to prevent the default action which is to * toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highmaps) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highmaps) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highmaps) Fires when the legend item belonging to the series is clicked. * One parameter, `event`, is passed to the function. The default action is * to toggle the visibility of the series. This can be prevented by * returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highmaps) Fires when the mouse leaves the graph. One parameter, `event`, * is passed to the function, containing common event information. If the * stickyTracking option is true, `mouseOut` doesn't happen before the mouse * enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highmaps) Fires when the mouse enters the graph. One parameter, `event`, * is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highmaps) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock) Apply a jitter effect for the rendered markers. When * plotting discrete values, a little random noise may help telling the points * apart. The jitter setting applies a random displacement of up to `n` axis * units in either direction. So for example on a horizontal X axis, setting the * `jitter.x` to 0.24 will render the point in a random position between 0.24 * units to the left and 0.24 units to the right of the true axis position. On a * category axis, setting it to 0.5 will fill up the bin and make the data * appear continuous. * * When rendered on top of a box plot or a column series, a jitter value of 0.24 * will correspond to the underlying series' default groupPadding and * pointPadding settings. */ export interface PlotMapJitterOptions { /** * (Highcharts, Highstock) The maximal X offset for the random jitter * effect. */ x?: number; /** * (Highcharts, Highstock) The maximal Y offset for the random jitter * effect. */ y?: number; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotMapLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotMapLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotMapLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotMapLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotMapLastVisiblePriceLabelOptions; } /** * (Highmaps) Keyboard navigation for a series */ export interface PlotMaplineAccessibilityKeyboardNavigationOptions { /** * (Highmaps) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highmaps) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotMaplineAccessibilityOptions { /** * (Highmaps) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highmaps) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highmaps) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highmaps) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotMaplineAccessibilityKeyboardNavigationOptions); /** * (Highmaps) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highmaps) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotMaplineAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotMaplineConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotMaplineConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotMaplineConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotMaplineConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotMaplineConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotMaplineConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotMaplineConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotMaplineDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highmaps) Options for the drag handles. */ export interface PlotMaplineDragDropDragHandleOptions { /** * (Highmaps) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highmaps) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highmaps) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highmaps) The line width for the drag handles. */ lineWidth?: number; /** * (Highmaps) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highmaps) The z index for the drag handles. */ zIndex?: number; } /** * (Highmaps) Style options for the guide box default state. */ export interface PlotMaplineDragDropGuideBoxDefaultOptions { /** * (Highmaps) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highmaps) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Guide box cursor. */ cursor?: string; /** * (Highmaps) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highmaps) Width of the line around the guide box. */ lineWidth?: number; /** * (Highmaps) Guide box zIndex. */ zIndex?: number; } /** * (Highmaps) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotMaplineDragDropGuideBoxOptions { /** * (Highmaps) Style options for the guide box default state. */ default?: PlotMaplineDragDropGuideBoxDefaultOptions; } /** * (Highmaps) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotMaplineDragDropOptions { /** * (Highmaps) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highmaps) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highmaps) Options for the drag handles. */ dragHandle?: PlotMaplineDragDropDragHandleOptions; /** * (Highmaps) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highmaps) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highmaps) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highmaps) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highmaps) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highmaps) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highmaps) The amount of pixels to drag the pointer before it counts as a * drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highmaps) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highmaps) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotMaplineDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highmaps) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highmaps) General event handlers for the series items. These event hooks can * also be attached to the series at run time using the `Highcharts.addEvent` * function. */ export interface PlotMaplineEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highmaps) Fires when the checkbox next to the series' name in the legend * is clicked. One parameter, `event`, is passed to the function. The state * of the checkbox is found by `event.checked`. The checked item is found by * `event.item`. Return `false` to prevent the default action which is to * toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highmaps) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highmaps) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highmaps) Fires when the legend item belonging to the series is clicked. * One parameter, `event`, is passed to the function. The default action is * to toggle the visibility of the series. This can be prevented by * returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highmaps) Fires when the mouse leaves the graph. One parameter, `event`, * is passed to the function, containing common event information. If the * stickyTracking option is true, `mouseOut` doesn't happen before the mouse * enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highmaps) Fires when the mouse enters the graph. One parameter, `event`, * is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highmaps) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock) Apply a jitter effect for the rendered markers. When * plotting discrete values, a little random noise may help telling the points * apart. The jitter setting applies a random displacement of up to `n` axis * units in either direction. So for example on a horizontal X axis, setting the * `jitter.x` to 0.24 will render the point in a random position between 0.24 * units to the left and 0.24 units to the right of the true axis position. On a * category axis, setting it to 0.5 will fill up the bin and make the data * appear continuous. * * When rendered on top of a box plot or a column series, a jitter value of 0.24 * will correspond to the underlying series' default groupPadding and * pointPadding settings. */ export interface PlotMaplineJitterOptions { /** * (Highcharts, Highstock) The maximal X offset for the random jitter * effect. */ x?: number; /** * (Highcharts, Highstock) The maximal Y offset for the random jitter * effect. */ y?: number; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotMaplineLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotMaplineLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotMaplineLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotMaplineLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotMaplineLastVisiblePriceLabelOptions; } /** * (Highmaps) A mapline series is a special case of the map series where the * value colors are applied to the strokes rather than the fills. It can also be * used for freeform drawing, like dividers, in the map. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `mapline` series are defined in plotOptions.mapline. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotMaplineOptions { /** * (Highmaps) Accessibility options for a series. Requires the accessibility * module. */ accessibility?: (object|PlotMaplineAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highmaps) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highmaps) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|PlotMaplineAnimationOptions); /** * (Highmaps) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highmaps) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highmaps) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: string; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highmaps) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highmaps) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highmaps) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highmaps) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotMaplineConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highmaps) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highmaps) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotMaplineDataGroupingOptions; /** * (Highmaps) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highmaps) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highmaps) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotMaplineDragDropOptions; /** * (Highmaps) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highmaps) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotMaplineEventsOptions; /** * (Highmaps) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highmaps) Fill color for the map line shapes */ fillColor?: ColorString; /** * (Highmaps) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highmaps) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock) Apply a jitter effect for the rendered markers. * When plotting discrete values, a little random noise may help telling the * points apart. The jitter setting applies a random displacement of up to * `n` axis units in either direction. So for example on a horizontal X * axis, setting the `jitter.x` to 0.24 will render the point in a random * position between 0.24 units to the left and 0.24 units to the right of * the true axis position. On a category axis, setting it to 0.5 will fill * up the bin and make the data appear continuous. * * When rendered on top of a box plot or a column series, a jitter value of * 0.24 will correspond to the underlying series' default groupPadding and * pointPadding settings. */ jitter?: PlotMaplineJitterOptions; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: string; /** * (Highmaps) An array specifying which option maps to which key in the data * point array. This makes it convenient to work with unstructured data * arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotMaplineLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotMaplineLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotMaplineLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) The width of the map line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highmaps) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) The color to apply to null points. * * In styled mode, the null point fill is set in the * `.highcharts-null-point` class. */ nullColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Whether to allow pointer interaction like tooltips and mouse * events on null points. */ nullInteraction?: boolean; /** * (Highmaps) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highmaps) Properties for each single point. */ point?: PlotMaplinePointOptions; /** * (Highmaps) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, `pointInterval` defines the interval of the x values. For * example, if a series contains one value every decade starting from year * 0, set `pointInterval` to `10`. In true `datetime` axes, the * `pointInterval` is set in milliseconds. * * It can be also be combined with `pointIntervalUnit` to draw irregular * time intervals. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointInterval?: number; /** * (Highcharts, Highstock, Gantt) On datetime series, this allows for * setting the pointInterval to irregular time units, `day`, `month` and * `year`. A day is usually the same as 24 hours, but `pointIntervalUnit` * also takes the DST crossover into consideration when dealing with local * time. Combine this option with `pointInterval` to draw weeks, quarters, 6 * months, 10 years etc. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointIntervalUnit?: OptionsPointIntervalUnitValue; /** * (Highstock) The width of each point on the x axis. For example in a * column chart with one value each day, the pointRange would be 1 day (= 24 * * 3600 * * * 1000 milliseconds). This is normally computed automatically, but this * option can be used to override the automatic value. */ pointRange?: number; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, pointStart defines on what value to start. For example, if a * series contains one yearly value starting from 1945, set pointStart to * 1945. */ pointStart?: number; /** * (Highmaps) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highmaps) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highmaps) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highmaps) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; /** * (Highcharts, Highstock) Whether to stack the values of each series on top * of each other. Possible values are `undefined` to disable, `"normal"` to * stack by value or `"percent"`. When stacking is enabled, data must be * sorted in ascending X order. A special stacking option is with the * streamgraph series type, where the stacking option is set to `"stream"`. * The second one is `"overlap"`, which only applies to waterfall series. */ stacking?: OptionsStackingValue; states?: PlotMaplineStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highcharts, Highstock) Sticky tracking of mouse events. When true, the * `mouseOut` event on a series isn't triggered until the mouse moves over * another series, or out of the plot area. When false, the `mouseOut` event * on a series is triggered when the mouse leaves the area around the * series' graph or markers. This also implies the tooltip. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highcharts, Highstock) A configuration object for the tooltip rendering * of each single series. Properties are inherited from tooltip. Overridable * properties are `headerFormat`, `pointFormat`, `yDecimals`, `xDateFormat`, * `yPrefix` and `ySuffix`. Unlike other series, in a scatter plot the * series.name by default shows in the headerFormat and point.x and point.y * in the pointFormat. */ tooltip?: PlotMaplineTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highmaps) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotMaplineZonesOptions>; } /** * (Highmaps) Events for each single point. */ export interface PlotMaplinePointEventsOptions { /** * (Highmaps) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highmaps) Callback that fires while dragging a point. The mouse event is * passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highmaps) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highmaps) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highmaps) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highmaps) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highmaps) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highmaps) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highmaps) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highmaps) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highmaps) Properties for each single point. */ export interface PlotMaplinePointOptions { /** * (Highmaps) Events for each single point. */ events?: PlotMaplinePointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotMaplineStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotMaplineStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotMaplineStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotMaplineStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotMaplineStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotMaplineStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotMaplineStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotMaplineStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotMaplineStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotMaplineStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotMaplineStatesHoverMarkerStatesHoverOptions; inactive?: PlotMaplineStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotMaplineStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotMaplineStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotMaplineStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Options for the hovered series. These settings override the normal * state options when a series is moused over or touched. */ export interface PlotMaplineStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotMaplineStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotMaplineStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotMaplineStatesHoverMarkerOptions; } export interface PlotMaplineStatesInactiveAnimationOptions { duration?: number; } /** * (Highmaps) The opposite state of a hover for series. */ export interface PlotMaplineStatesInactiveOptions { animation?: PlotMaplineStatesInactiveAnimationOptions; /** * (Highmaps) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highmaps) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotMaplineStatesNormalOptions { /** * (Highmaps) Animation when returning to normal state after hovering. */ animation?: boolean; } export interface PlotMaplineStatesOptions { /** * (Highmaps) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotMaplineStatesHoverOptions; /** * (Highmaps) The opposite state of a hover for series. */ inactive?: PlotMaplineStatesInactiveOptions; /** * (Highmaps) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotMaplineStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotMaplineStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotMaplineStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotMaplineStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotMaplineStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotMaplineStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotMaplineStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotMaplineStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotMaplineStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotMaplineStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotMaplineStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotMaplineStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotMaplineStatesSelectMarkerStatesHoverOptions; inactive?: PlotMaplineStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotMaplineStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotMaplineStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotMaplineStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotMaplineStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotMaplineStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: string; /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotMaplineStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotMaplineStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotMaplineTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts, Highstock) A configuration object for the tooltip rendering of * each single series. Properties are inherited from tooltip. Overridable * properties are `headerFormat`, `pointFormat`, `yDecimals`, `xDateFormat`, * `yPrefix` and `ySuffix`. Unlike other series, in a scatter plot the * series.name by default shows in the headerFormat and point.x and point.y in * the pointFormat. */ export interface PlotMaplineTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotMaplineTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highcharts, Highstock) Whether the tooltip should follow the mouse as it * moves across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts, Highstock) Whether the tooltip should update as the finger * moves on a touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts, Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts, Highstock) The HTML of the tooltip header line. Variables * are enclosed by curly brackets. Available variables are `point.key`, * `series.name`, `series.color` and other members from the `point` and * `series` objects. The `point.key` variable contains the category name, x * value or datetime string depending on the type of axis. For datetime * axes, the `point.key` date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts, Highstock) The name of a symbol to use for the border around * the tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts, Highstock) The number of milliseconds to wait until the * tooltip is hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts, Highstock) The HTML of the null point's line in the tooltip. * Works analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts, Highstock) Callback function to format the text of the * tooltip for visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts, Highstock) Whether to allow the tooltip to render outside * the chart's SVG element box. By default (`false`), the tooltip is * rendered within the chart's SVG element, which results in the tooltip * being aligned inside the chart area. For small charts, this may result in * clipping or overlapping. When `true`, a separate SVG element is created * and overlaid on the page, allowing the tooltip to be aligned inside the * page itself. */ outside?: boolean; /** * (Highcharts, Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts, Highstock) The HTML of the point's line in the tooltip. * Variables are enclosed by curly brackets. Available variables are * point.x, point.y, series. name and series.color and other properties on * the same form. Furthermore, `point.y` can be extended by the * `tooltip.valuePrefix` and `tooltip.valueSuffix` variables. This can also * be overridden for each series, which makes it a good hook for displaying * units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts, Highstock) A callback function for formatting the HTML * output for a single point in the tooltip. Like the `pointFormat` string, * but with more flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts, Highstock) How many decimals to show in each series' y * value. This is overridable in each series' tooltip options object. The * default is to preserve all decimals. */ valueDecimals?: number; /** * (Highcharts, Highstock) A string to prepend to each series' y value. * Overridable in each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts, Highstock) A string to append to each series' y value. * Overridable in each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotMaplineZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highmaps) The map series is used for basic choropleth maps, where each map * area has a color based on its value. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `map` series are defined in plotOptions.map. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotMapOptions { /** * (Highmaps) Accessibility options for a series. Requires the accessibility * module. */ accessibility?: (object|PlotMapAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highmaps) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highmaps) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|PlotMapAnimationOptions); /** * (Highmaps) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highmaps) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highmaps) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: string; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highmaps) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highmaps) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highmaps) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highmaps) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotMapConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highmaps) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highmaps) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotMapDataGroupingOptions; /** * (Highmaps) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highmaps) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highmaps) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotMapDragDropOptions; /** * (Highmaps) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highmaps) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotMapEventsOptions; /** * (Highmaps) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highmaps) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highmaps) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock) Apply a jitter effect for the rendered markers. * When plotting discrete values, a little random noise may help telling the * points apart. The jitter setting applies a random displacement of up to * `n` axis units in either direction. So for example on a horizontal X * axis, setting the `jitter.x` to 0.24 will render the point in a random * position between 0.24 units to the left and 0.24 units to the right of * the true axis position. On a category axis, setting it to 0.5 will fill * up the bin and make the data appear continuous. * * When rendered on top of a box plot or a column series, a jitter value of * 0.24 will correspond to the underlying series' default groupPadding and * pointPadding settings. */ jitter?: PlotMapJitterOptions; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: string; /** * (Highmaps) An array specifying which option maps to which key in the data * point array. This makes it convenient to work with unstructured data * arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotMapLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotMapLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotMapLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) The width of the line connecting the data points. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highmaps) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) The color to apply to null points. * * In styled mode, the null point fill is set in the * `.highcharts-null-point` class. */ nullColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Whether to allow pointer interaction like tooltips and mouse * events on null points. */ nullInteraction?: boolean; /** * (Highmaps) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highmaps) Properties for each single point. */ point?: PlotMapPointOptions; /** * (Highmaps) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, `pointInterval` defines the interval of the x values. For * example, if a series contains one value every decade starting from year * 0, set `pointInterval` to `10`. In true `datetime` axes, the * `pointInterval` is set in milliseconds. * * It can be also be combined with `pointIntervalUnit` to draw irregular * time intervals. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointInterval?: number; /** * (Highcharts, Highstock, Gantt) On datetime series, this allows for * setting the pointInterval to irregular time units, `day`, `month` and * `year`. A day is usually the same as 24 hours, but `pointIntervalUnit` * also takes the DST crossover into consideration when dealing with local * time. Combine this option with `pointInterval` to draw weeks, quarters, 6 * months, 10 years etc. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointIntervalUnit?: OptionsPointIntervalUnitValue; /** * (Highstock) The width of each point on the x axis. For example in a * column chart with one value each day, the pointRange would be 1 day (= 24 * * 3600 * * * 1000 milliseconds). This is normally computed automatically, but this * option can be used to override the automatic value. */ pointRange?: number; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, pointStart defines on what value to start. For example, if a * series contains one yearly value starting from 1945, set pointStart to * 1945. */ pointStart?: number; /** * (Highmaps) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highmaps) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highmaps) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highmaps) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; /** * (Highcharts, Highstock) Whether to stack the values of each series on top * of each other. Possible values are `undefined` to disable, `"normal"` to * stack by value or `"percent"`. When stacking is enabled, data must be * sorted in ascending X order. A special stacking option is with the * streamgraph series type, where the stacking option is set to `"stream"`. * The second one is `"overlap"`, which only applies to waterfall series. */ stacking?: OptionsStackingValue; states?: PlotMapStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highcharts, Highstock) Sticky tracking of mouse events. When true, the * `mouseOut` event on a series isn't triggered until the mouse moves over * another series, or out of the plot area. When false, the `mouseOut` event * on a series is triggered when the mouse leaves the area around the * series' graph or markers. This also implies the tooltip. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highcharts, Highstock) A configuration object for the tooltip rendering * of each single series. Properties are inherited from tooltip. Overridable * properties are `headerFormat`, `pointFormat`, `yDecimals`, `xDateFormat`, * `yPrefix` and `ySuffix`. Unlike other series, in a scatter plot the * series.name by default shows in the headerFormat and point.x and point.y * in the pointFormat. */ tooltip?: PlotMapTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highmaps) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotMapZonesOptions>; } /** * (Highmaps) Keyboard navigation for a series */ export interface PlotMappointAccessibilityKeyboardNavigationOptions { /** * (Highmaps) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highmaps) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotMappointAccessibilityOptions { /** * (Highmaps) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highmaps) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highmaps) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highmaps) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotMappointAccessibilityKeyboardNavigationOptions); /** * (Highmaps) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highmaps) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotMappointAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotMappointConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotMappointConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotMappointConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotMappointConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotMappointConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotMappointConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotMappointConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotMappointDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highmaps) Options for the drag handles. */ export interface PlotMappointDragDropDragHandleOptions { /** * (Highmaps) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highmaps) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highmaps) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highmaps) The line width for the drag handles. */ lineWidth?: number; /** * (Highmaps) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highmaps) The z index for the drag handles. */ zIndex?: number; } /** * (Highmaps) Style options for the guide box default state. */ export interface PlotMappointDragDropGuideBoxDefaultOptions { /** * (Highmaps) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highmaps) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Guide box cursor. */ cursor?: string; /** * (Highmaps) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highmaps) Width of the line around the guide box. */ lineWidth?: number; /** * (Highmaps) Guide box zIndex. */ zIndex?: number; } /** * (Highmaps) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotMappointDragDropGuideBoxOptions { /** * (Highmaps) Style options for the guide box default state. */ default?: PlotMappointDragDropGuideBoxDefaultOptions; } /** * (Highmaps) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotMappointDragDropOptions { /** * (Highmaps) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highmaps) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highmaps) Options for the drag handles. */ dragHandle?: PlotMappointDragDropDragHandleOptions; /** * (Highmaps) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highmaps) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highmaps) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highmaps) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highmaps) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highmaps) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highmaps) The amount of pixels to drag the pointer before it counts as a * drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highmaps) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highmaps) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotMappointDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highmaps) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highmaps) Events for each single point. */ export interface PlotMapPointEventsOptions { /** * (Highmaps) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highmaps) Callback that fires while dragging a point. The mouse event is * passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highmaps) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highmaps) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highmaps) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highmaps) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highmaps) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highmaps) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highmaps) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highmaps) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highmaps) General event handlers for the series items. These event hooks can * also be attached to the series at run time using the `Highcharts.addEvent` * function. */ export interface PlotMappointEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highmaps) Fires when the checkbox next to the series' name in the legend * is clicked. One parameter, `event`, is passed to the function. The state * of the checkbox is found by `event.checked`. The checked item is found by * `event.item`. Return `false` to prevent the default action which is to * toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highmaps) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highmaps) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highmaps) Fires when the legend item belonging to the series is clicked. * One parameter, `event`, is passed to the function. The default action is * to toggle the visibility of the series. This can be prevented by * returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highmaps) Fires when the mouse leaves the graph. One parameter, `event`, * is passed to the function, containing common event information. If the * stickyTracking option is true, `mouseOut` doesn't happen before the mouse * enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highmaps) Fires when the mouse enters the graph. One parameter, `event`, * is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highmaps) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock) Apply a jitter effect for the rendered markers. When * plotting discrete values, a little random noise may help telling the points * apart. The jitter setting applies a random displacement of up to `n` axis * units in either direction. So for example on a horizontal X axis, setting the * `jitter.x` to 0.24 will render the point in a random position between 0.24 * units to the left and 0.24 units to the right of the true axis position. On a * category axis, setting it to 0.5 will fill up the bin and make the data * appear continuous. * * When rendered on top of a box plot or a column series, a jitter value of 0.24 * will correspond to the underlying series' default groupPadding and * pointPadding settings. */ export interface PlotMappointJitterOptions { /** * (Highcharts, Highstock) The maximal X offset for the random jitter * effect. */ x?: number; /** * (Highcharts, Highstock) The maximal Y offset for the random jitter * effect. */ y?: number; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotMappointLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotMappointLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotMappointLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotMappointLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotMappointLastVisiblePriceLabelOptions; } /** * (Highmaps) Options for the point markers of line-like series. Properties like * `fillColor`, `lineColor` and `lineWidth` define the visual appearance of the * markers. Other series types, like column series, don't have markers, but have * visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotMappointMarkerOptions { /** * (Highmaps) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highmaps) The threshold for how dense the point markers should be before * they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highmaps) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Image markers only. Set the image width explicitly. When using * this option, a `width` must also be set. */ height?: number; /** * (Highmaps) The color of the point marker's outline. When `undefined`, the * series' or point's color is used. */ lineColor?: ColorString; /** * (Highmaps) The width of the point marker's outline. */ lineWidth?: number; /** * (Highmaps) The radius of the point marker. */ radius?: number; /** * (Highmaps) States for a single point marker. */ states?: PlotMappointMarkerStatesOptions; /** * (Highmaps) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highmaps) Image markers only. Set the image width explicitly. When using * this option, a `height` must also be set. */ width?: number; } /** * (Highmaps) Animation when hovering over the marker. */ export interface PlotMappointMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highmaps) The hover state for a single point marker. */ export interface PlotMappointMarkerStatesHoverOptions { /** * (Highmaps) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotMappointMarkerStatesHoverAnimationOptions); /** * (Highmaps) Enable or disable the point marker. */ enabled?: boolean; /** * (Highmaps) The fill color of the marker in hover state. When `undefined`, * the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) The color of the point marker's outline. When `undefined`, the * series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highmaps) The width of the point marker's outline. When `undefined`, the * series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highmaps) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highmaps) The radius of the point marker. In hover state, it defaults to * the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highmaps) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotMappointMarkerStatesInactiveOptions { /** * (Highmaps) Opacity of inactive markers. */ opacity?: any; } /** * (Highmaps) The normal state of a single point marker. Currently only used for * setting animation when returning to normal state from hover. */ export interface PlotMappointMarkerStatesNormalOptions { /** * (Highmaps) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highmaps) States for a single point marker. */ export interface PlotMappointMarkerStatesOptions { /** * (Highmaps) The hover state for a single point marker. */ hover?: PlotMappointMarkerStatesHoverOptions; inactive?: PlotMappointMarkerStatesInactiveOptions; /** * (Highmaps) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ normal?: PlotMappointMarkerStatesNormalOptions; /** * (Highmaps) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotMappointMarkerStatesSelectOptions; } /** * (Highmaps) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotMappointMarkerStatesSelectOptions { /** * (Highmaps) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highmaps) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) The color of the point marker's outline. When `undefined`, the * series' or point's color is used. */ lineColor?: ColorString; /** * (Highmaps) The width of the point marker's outline. */ lineWidth?: number; /** * (Highmaps) The radius of the point marker. In hover state, it defaults to * the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) A mappoint series is a special form of scatter series where the * points can be laid out in map coordinates on top of a map. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `mappoint` series are defined in plotOptions.mappoint. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotMappointOptions { /** * (Highmaps) Accessibility options for a series. Requires the accessibility * module. */ accessibility?: (object|PlotMappointAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highmaps) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highmaps) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotMappointAnimationOptions); /** * (Highmaps) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highmaps) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highmaps) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highmaps) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highmaps) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highmaps) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highmaps) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotMappointConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highmaps) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highmaps) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotMappointDataGroupingOptions; /** * (Highmaps) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highmaps) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highmaps) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotMappointDragDropOptions; /** * (Highmaps) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highmaps) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotMappointEventsOptions; /** * (Highmaps) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highmaps) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highmaps) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock) Apply a jitter effect for the rendered markers. * When plotting discrete values, a little random noise may help telling the * points apart. The jitter setting applies a random displacement of up to * `n` axis units in either direction. So for example on a horizontal X * axis, setting the `jitter.x` to 0.24 will render the point in a random * position between 0.24 units to the left and 0.24 units to the right of * the true axis position. On a category axis, setting it to 0.5 will fill * up the bin and make the data appear continuous. * * When rendered on top of a box plot or a column series, a jitter value of * 0.24 will correspond to the underlying series' default groupPadding and * pointPadding settings. */ jitter?: PlotMappointJitterOptions; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highmaps) An array specifying which option maps to which key in the data * point array. This makes it convenient to work with unstructured data * arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotMappointLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotMappointLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotMappointLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) The width of the line connecting the data points. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highmaps) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotMappointMarkerOptions; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highmaps) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highmaps) Properties for each single point. */ point?: PlotMappointPointOptions; /** * (Highmaps) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, `pointInterval` defines the interval of the x values. For * example, if a series contains one value every decade starting from year * 0, set `pointInterval` to `10`. In true `datetime` axes, the * `pointInterval` is set in milliseconds. * * It can be also be combined with `pointIntervalUnit` to draw irregular * time intervals. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointInterval?: number; /** * (Highcharts, Highstock, Gantt) On datetime series, this allows for * setting the pointInterval to irregular time units, `day`, `month` and * `year`. A day is usually the same as 24 hours, but `pointIntervalUnit` * also takes the DST crossover into consideration when dealing with local * time. Combine this option with `pointInterval` to draw weeks, quarters, 6 * months, 10 years etc. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointIntervalUnit?: OptionsPointIntervalUnitValue; /** * (Highstock) The width of each point on the x axis. For example in a * column chart with one value each day, the pointRange would be 1 day (= 24 * * 3600 * * * 1000 milliseconds). This is normally computed automatically, but this * option can be used to override the automatic value. */ pointRange?: number; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, pointStart defines on what value to start. For example, if a * series contains one yearly value starting from 1945, set pointStart to * 1945. */ pointStart?: number; /** * (Highmaps) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highmaps) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highmaps) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highmaps) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; /** * (Highcharts, Highstock) Whether to stack the values of each series on top * of each other. Possible values are `undefined` to disable, `"normal"` to * stack by value or `"percent"`. When stacking is enabled, data must be * sorted in ascending X order. A special stacking option is with the * streamgraph series type, where the stacking option is set to `"stream"`. * The second one is `"overlap"`, which only applies to waterfall series. */ stacking?: OptionsStackingValue; states?: PlotMappointStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highcharts, Highstock) Sticky tracking of mouse events. When true, the * `mouseOut` event on a series isn't triggered until the mouse moves over * another series, or out of the plot area. When false, the `mouseOut` event * on a series is triggered when the mouse leaves the area around the * series' graph or markers. This also implies the tooltip. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highcharts, Highstock) A configuration object for the tooltip rendering * of each single series. Properties are inherited from tooltip. Overridable * properties are `headerFormat`, `pointFormat`, `yDecimals`, `xDateFormat`, * `yPrefix` and `ySuffix`. Unlike other series, in a scatter plot the * series.name by default shows in the headerFormat and point.x and point.y * in the pointFormat. */ tooltip?: PlotMappointTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highmaps) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotMappointZonesOptions>; } /** * (Highmaps) Properties for each single point. */ export interface PlotMapPointOptions { /** * (Highmaps) Events for each single point. */ events?: PlotMapPointEventsOptions; } /** * (Highmaps) Events for each single point. */ export interface PlotMappointPointEventsOptions { /** * (Highmaps) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highmaps) Callback that fires while dragging a point. The mouse event is * passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highmaps) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highmaps) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highmaps) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highmaps) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highmaps) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highmaps) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highmaps) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highmaps) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highmaps) Properties for each single point. */ export interface PlotMappointPointOptions { /** * (Highmaps) Events for each single point. */ events?: PlotMappointPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotMappointStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotMappointStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotMappointStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotMappointStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotMappointStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotMappointStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotMappointStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotMappointStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotMappointStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotMappointStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotMappointStatesHoverMarkerStatesHoverOptions; inactive?: PlotMappointStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotMappointStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotMappointStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotMappointStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Options for the hovered series. These settings override the normal * state options when a series is moused over or touched. */ export interface PlotMappointStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotMappointStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotMappointStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotMappointStatesHoverMarkerOptions; } export interface PlotMappointStatesInactiveAnimationOptions { duration?: number; } /** * (Highmaps) The opposite state of a hover for series. */ export interface PlotMappointStatesInactiveOptions { animation?: PlotMappointStatesInactiveAnimationOptions; /** * (Highmaps) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highmaps) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotMappointStatesNormalOptions { /** * (Highmaps) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotMappointStatesOptions { /** * (Highmaps) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotMappointStatesHoverOptions; /** * (Highmaps) The opposite state of a hover for series. */ inactive?: PlotMappointStatesInactiveOptions; /** * (Highmaps) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotMappointStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotMappointStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotMappointStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotMappointStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotMappointStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotMappointStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotMappointStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotMappointStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotMappointStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotMappointStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotMappointStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotMappointStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotMappointStatesSelectMarkerStatesHoverOptions; inactive?: PlotMappointStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotMappointStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotMappointStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotMappointStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotMappointStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotMappointStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotMappointStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotMappointStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotMappointTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts, Highstock) A configuration object for the tooltip rendering of * each single series. Properties are inherited from tooltip. Overridable * properties are `headerFormat`, `pointFormat`, `yDecimals`, `xDateFormat`, * `yPrefix` and `ySuffix`. Unlike other series, in a scatter plot the * series.name by default shows in the headerFormat and point.x and point.y in * the pointFormat. */ export interface PlotMappointTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotMappointTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highcharts, Highstock) Whether the tooltip should follow the mouse as it * moves across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts, Highstock) Whether the tooltip should update as the finger * moves on a touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts, Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts, Highstock) The HTML of the tooltip header line. Variables * are enclosed by curly brackets. Available variables are `point.key`, * `series.name`, `series.color` and other members from the `point` and * `series` objects. The `point.key` variable contains the category name, x * value or datetime string depending on the type of axis. For datetime * axes, the `point.key` date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts, Highstock) The name of a symbol to use for the border around * the tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts, Highstock) The number of milliseconds to wait until the * tooltip is hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts, Highstock) The HTML of the null point's line in the tooltip. * Works analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts, Highstock) Callback function to format the text of the * tooltip for visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts, Highstock) Whether to allow the tooltip to render outside * the chart's SVG element box. By default (`false`), the tooltip is * rendered within the chart's SVG element, which results in the tooltip * being aligned inside the chart area. For small charts, this may result in * clipping or overlapping. When `true`, a separate SVG element is created * and overlaid on the page, allowing the tooltip to be aligned inside the * page itself. */ outside?: boolean; /** * (Highcharts, Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts, Highstock) The HTML of the point's line in the tooltip. * Variables are enclosed by curly brackets. Available variables are * point.x, point.y, series. name and series.color and other properties on * the same form. Furthermore, `point.y` can be extended by the * `tooltip.valuePrefix` and `tooltip.valueSuffix` variables. This can also * be overridden for each series, which makes it a good hook for displaying * units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts, Highstock) A callback function for formatting the HTML * output for a single point in the tooltip. Like the `pointFormat` string, * but with more flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts, Highstock) How many decimals to show in each series' y * value. This is overridable in each series' tooltip options object. The * default is to preserve all decimals. */ valueDecimals?: number; /** * (Highcharts, Highstock) A string to prepend to each series' y value. * Overridable in each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts, Highstock) A string to append to each series' y value. * Overridable in each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotMappointZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotMapStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotMapStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotMapStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotMapStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotMapStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotMapStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotMapStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotMapStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotMapStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotMapStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotMapStatesHoverMarkerStatesHoverOptions; inactive?: PlotMapStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotMapStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotMapStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotMapStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Options for the hovered series. These settings override the normal * state options when a series is moused over or touched. */ export interface PlotMapStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotMapStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotMapStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotMapStatesHoverMarkerOptions; } export interface PlotMapStatesInactiveAnimationOptions { duration?: number; } /** * (Highmaps) The opposite state of a hover for series. */ export interface PlotMapStatesInactiveOptions { animation?: PlotMapStatesInactiveAnimationOptions; /** * (Highmaps) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highmaps) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotMapStatesNormalOptions { /** * (Highmaps) Animation when returning to normal state after hovering. */ animation?: boolean; } export interface PlotMapStatesOptions { /** * (Highmaps) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotMapStatesHoverOptions; /** * (Highmaps) The opposite state of a hover for series. */ inactive?: PlotMapStatesInactiveOptions; /** * (Highmaps) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotMapStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotMapStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotMapStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotMapStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotMapStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotMapStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotMapStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotMapStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotMapStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotMapStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotMapStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotMapStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotMapStatesSelectMarkerStatesHoverOptions; inactive?: PlotMapStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotMapStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotMapStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotMapStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotMapStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotMapStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: string; /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotMapStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotMapStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotMapTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts, Highstock) A configuration object for the tooltip rendering of * each single series. Properties are inherited from tooltip. Overridable * properties are `headerFormat`, `pointFormat`, `yDecimals`, `xDateFormat`, * `yPrefix` and `ySuffix`. Unlike other series, in a scatter plot the * series.name by default shows in the headerFormat and point.x and point.y in * the pointFormat. */ export interface PlotMapTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotMapTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highcharts, Highstock) Whether the tooltip should follow the mouse as it * moves across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts, Highstock) Whether the tooltip should update as the finger * moves on a touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts, Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts, Highstock) The HTML of the tooltip header line. Variables * are enclosed by curly brackets. Available variables are `point.key`, * `series.name`, `series.color` and other members from the `point` and * `series` objects. The `point.key` variable contains the category name, x * value or datetime string depending on the type of axis. For datetime * axes, the `point.key` date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts, Highstock) The name of a symbol to use for the border around * the tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts, Highstock) The number of milliseconds to wait until the * tooltip is hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts, Highstock) The HTML of the null point's line in the tooltip. * Works analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts, Highstock) Callback function to format the text of the * tooltip for visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts, Highstock) Whether to allow the tooltip to render outside * the chart's SVG element box. By default (`false`), the tooltip is * rendered within the chart's SVG element, which results in the tooltip * being aligned inside the chart area. For small charts, this may result in * clipping or overlapping. When `true`, a separate SVG element is created * and overlaid on the page, allowing the tooltip to be aligned inside the * page itself. */ outside?: boolean; /** * (Highcharts, Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts, Highstock) The HTML of the point's line in the tooltip. * Variables are enclosed by curly brackets. Available variables are * point.x, point.y, series. name and series.color and other properties on * the same form. Furthermore, `point.y` can be extended by the * `tooltip.valuePrefix` and `tooltip.valueSuffix` variables. This can also * be overridden for each series, which makes it a good hook for displaying * units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts, Highstock) A callback function for formatting the HTML * output for a single point in the tooltip. Like the `pointFormat` string, * but with more flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts, Highstock) How many decimals to show in each series' y * value. This is overridable in each series' tooltip options object. The * default is to preserve all decimals. */ valueDecimals?: number; /** * (Highcharts, Highstock) A string to prepend to each series' y value. * Overridable in each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts, Highstock) A string to append to each series' y value. * Overridable in each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotMapZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotMfiAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotMfiAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotMfiAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotMfiAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotMfiConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotMfiConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotMfiConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotMfiConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotMfiConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotMfiConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotMfiConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotMfiDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotMfiDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotMfiDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotMfiDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotMfiDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotMfiDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotMfiDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotMfiDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotMfiEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotMfiLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotMfiLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotMfiLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotMfiLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotMfiLastVisiblePriceLabelOptions; } /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotMfiMarkerOptions { /** * (Highstock) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highstock) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highstock) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. */ radius?: number; /** * (Highstock) States for a single point marker. */ states?: PlotMfiMarkerStatesOptions; /** * (Highstock) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highstock) Animation when hovering over the marker. */ export interface PlotMfiMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highstock) The hover state for a single point marker. */ export interface PlotMfiMarkerStatesHoverOptions { /** * (Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotMfiMarkerStatesHoverAnimationOptions); /** * (Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highstock) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotMfiMarkerStatesInactiveOptions { /** * (Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highstock) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotMfiMarkerStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highstock) States for a single point marker. */ export interface PlotMfiMarkerStatesOptions { /** * (Highstock) The hover state for a single point marker. */ hover?: PlotMfiMarkerStatesHoverOptions; inactive?: PlotMfiMarkerStatesInactiveOptions; /** * (Highstock) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotMfiMarkerStatesNormalOptions; /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotMfiMarkerStatesSelectOptions; } /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotMfiMarkerStatesSelectOptions { /** * (Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Money Flow Index. This series requires `linkedTo` option to be * set and should be loaded after the `stock/indicators/indicators.js` file. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `mfi` series are defined in plotOptions.mfi. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotMfiOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotMfiAccessibilityOptions); /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotMfiAnimationOptions); /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highstock) Whether to compare indicator to the main series values or * indicator values. */ compareToMain?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotMfiConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotMfiDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotMfiDragDropOptions; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotMfiEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotMfiLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotMfiLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotMfiLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The main series ID that indicator will be * based on. Required for this indicator. */ linkedTo?: string; /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotMfiMarkerOptions; /** * (Highstock) The name of the series as shown in the legend, tooltip etc. * If not set, it will be based on a technical indicator type and default * params. */ name?: string; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Paramters used in calculation of regression series' points. */ params?: PlotMfiParamsOptions; /** * (Highstock) Properties for each single point. */ point?: PlotMfiPointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotMfiStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotMfiTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotMfiZonesOptions>; } /** * (Highstock) Paramters used in calculation of regression series' points. */ export interface PlotMfiParamsOptions { /** * (Highstock) Number of maximum decimals that are used in MFI calculations. */ decimals?: number; /** * (Highstock) The base period for indicator calculations. This is the * number of data points which are taken into account for the indicator * calculations. */ period?: number; /** * (Highstock) The id of volume series which is mandatory. For example using * OHLC data, volumeSeriesID='volume' means the indicator will be calculated * using OHLC and volume values. */ volumeSeriesID?: string; } /** * (Highstock) Events for each single point. */ export interface PlotMfiPointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotMfiPointOptions { /** * (Highstock) Events for each single point. */ events?: PlotMfiPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotMfiStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotMfiStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotMfiStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotMfiStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotMfiStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotMfiStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotMfiStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotMfiStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotMfiStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotMfiStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotMfiStatesHoverMarkerStatesHoverOptions; inactive?: PlotMfiStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotMfiStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotMfiStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotMfiStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotMfiStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotMfiStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotMfiStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotMfiStatesHoverMarkerOptions; } export interface PlotMfiStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotMfiStatesInactiveOptions { animation?: PlotMfiStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotMfiStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotMfiStatesOptions { /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotMfiStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotMfiStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotMfiStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotMfiStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotMfiStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotMfiStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotMfiStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotMfiStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotMfiStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotMfiStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotMfiStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotMfiStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotMfiStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotMfiStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotMfiStatesSelectMarkerStatesHoverOptions; inactive?: PlotMfiStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotMfiStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotMfiStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotMfiStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotMfiStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotMfiStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotMfiStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotMfiStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotMfiTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotMfiTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotMfiTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) Number of decimals in indicator series. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotMfiZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotMomentumAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotMomentumAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotMomentumAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotMomentumAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotMomentumConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotMomentumConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotMomentumConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotMomentumConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotMomentumConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotMomentumConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotMomentumConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotMomentumDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotMomentumDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotMomentumDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotMomentumDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotMomentumDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotMomentumDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotMomentumDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotMomentumDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotMomentumEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotMomentumLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotMomentumLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotMomentumLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotMomentumLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotMomentumLastVisiblePriceLabelOptions; } /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotMomentumMarkerOptions { /** * (Highstock) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highstock) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highstock) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. */ radius?: number; /** * (Highstock) States for a single point marker. */ states?: PlotMomentumMarkerStatesOptions; /** * (Highstock) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highstock) Animation when hovering over the marker. */ export interface PlotMomentumMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highstock) The hover state for a single point marker. */ export interface PlotMomentumMarkerStatesHoverOptions { /** * (Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotMomentumMarkerStatesHoverAnimationOptions); /** * (Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highstock) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotMomentumMarkerStatesInactiveOptions { /** * (Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highstock) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotMomentumMarkerStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highstock) States for a single point marker. */ export interface PlotMomentumMarkerStatesOptions { /** * (Highstock) The hover state for a single point marker. */ hover?: PlotMomentumMarkerStatesHoverOptions; inactive?: PlotMomentumMarkerStatesInactiveOptions; /** * (Highstock) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotMomentumMarkerStatesNormalOptions; /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotMomentumMarkerStatesSelectOptions; } /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotMomentumMarkerStatesSelectOptions { /** * (Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Momentum. This series requires `linkedTo` option to be set. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `momentum` series are defined in plotOptions.momentum. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotMomentumOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotMomentumAccessibilityOptions); /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotMomentumAnimationOptions); /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highstock) Whether to compare indicator to the main series values or * indicator values. */ compareToMain?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotMomentumConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotMomentumDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotMomentumDragDropOptions; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotMomentumEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotMomentumLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotMomentumLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotMomentumLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The main series ID that indicator will be * based on. Required for this indicator. */ linkedTo?: string; /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotMomentumMarkerOptions; /** * (Highstock) The name of the series as shown in the legend, tooltip etc. * If not set, it will be based on a technical indicator type and default * params. */ name?: string; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Paramters used in calculation of regression series' points. */ params?: PlotMomentumParamsOptions; /** * (Highstock) Properties for each single point. */ point?: PlotMomentumPointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotMomentumStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotMomentumTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotMomentumZonesOptions>; } /** * (Highstock) Paramters used in calculation of regression series' points. */ export interface PlotMomentumParamsOptions { /** * (Highstock) The point index which indicator calculations will base. For * example using OHLC data, index=2 means the indicator will be calculated * using Low values. */ index?: number; /** * (Highstock) The base period for indicator calculations. This is the * number of data points which are taken into account for the indicator * calculations. */ period?: number; } /** * (Highstock) Events for each single point. */ export interface PlotMomentumPointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotMomentumPointOptions { /** * (Highstock) Events for each single point. */ events?: PlotMomentumPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotMomentumStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotMomentumStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotMomentumStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotMomentumStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotMomentumStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotMomentumStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotMomentumStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotMomentumStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotMomentumStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotMomentumStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotMomentumStatesHoverMarkerStatesHoverOptions; inactive?: PlotMomentumStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotMomentumStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotMomentumStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotMomentumStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotMomentumStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotMomentumStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotMomentumStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotMomentumStatesHoverMarkerOptions; } export interface PlotMomentumStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotMomentumStatesInactiveOptions { animation?: PlotMomentumStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotMomentumStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotMomentumStatesOptions { /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotMomentumStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotMomentumStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotMomentumStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotMomentumStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotMomentumStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotMomentumStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotMomentumStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotMomentumStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotMomentumStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotMomentumStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotMomentumStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotMomentumStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotMomentumStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotMomentumStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotMomentumStatesSelectMarkerStatesHoverOptions; inactive?: PlotMomentumStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotMomentumStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotMomentumStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotMomentumStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotMomentumStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotMomentumStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotMomentumStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotMomentumStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotMomentumTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotMomentumTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotMomentumTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) Number of decimals in indicator series. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotMomentumZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotNatrAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotNatrAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotNatrAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotNatrAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotNatrConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotNatrConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotNatrConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotNatrConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotNatrConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotNatrConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotNatrConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotNatrDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotNatrDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotNatrDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotNatrDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotNatrDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotNatrDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotNatrDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotNatrDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotNatrEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotNatrLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotNatrLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotNatrLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotNatrLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotNatrLastVisiblePriceLabelOptions; } /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotNatrMarkerOptions { /** * (Highstock) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highstock) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highstock) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. */ radius?: number; /** * (Highstock) States for a single point marker. */ states?: PlotNatrMarkerStatesOptions; /** * (Highstock) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highstock) Animation when hovering over the marker. */ export interface PlotNatrMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highstock) The hover state for a single point marker. */ export interface PlotNatrMarkerStatesHoverOptions { /** * (Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotNatrMarkerStatesHoverAnimationOptions); /** * (Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highstock) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotNatrMarkerStatesInactiveOptions { /** * (Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highstock) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotNatrMarkerStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highstock) States for a single point marker. */ export interface PlotNatrMarkerStatesOptions { /** * (Highstock) The hover state for a single point marker. */ hover?: PlotNatrMarkerStatesHoverOptions; inactive?: PlotNatrMarkerStatesInactiveOptions; /** * (Highstock) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotNatrMarkerStatesNormalOptions; /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotNatrMarkerStatesSelectOptions; } /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotNatrMarkerStatesSelectOptions { /** * (Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Normalized average true range indicator (NATR). This series * requires `linkedTo` option to be set and should be loaded after the * `stock/indicators/indicators.js` and `stock/indicators/atr.js`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `natr` series are defined in plotOptions.natr. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotNatrOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotNatrAccessibilityOptions); /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotNatrAnimationOptions); /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highstock) Whether to compare indicator to the main series values or * indicator values. */ compareToMain?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotNatrConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotNatrDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotNatrDragDropOptions; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotNatrEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotNatrLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotNatrLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotNatrLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The main series ID that indicator will be * based on. Required for this indicator. */ linkedTo?: string; /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotNatrMarkerOptions; /** * (Highstock) The name of the series as shown in the legend, tooltip etc. * If not set, it will be based on a technical indicator type and default * params. */ name?: string; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Paramters used in calculation of regression series' points. */ params?: PlotNatrParamsOptions; /** * (Highstock) Properties for each single point. */ point?: PlotNatrPointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotNatrStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotNatrTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotNatrZonesOptions>; } /** * (Highstock) Paramters used in calculation of regression series' points. */ export interface PlotNatrParamsOptions { /** * (Highstock) The point index which indicator calculations will base. For * example using OHLC data, index=2 means the indicator will be calculated * using Low values. */ index?: number; /** * (Highstock) The base period for indicator calculations. This is the * number of data points which are taken into account for the indicator * calculations. */ period?: number; } /** * (Highstock) Events for each single point. */ export interface PlotNatrPointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotNatrPointOptions { /** * (Highstock) Events for each single point. */ events?: PlotNatrPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotNatrStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotNatrStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotNatrStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotNatrStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotNatrStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotNatrStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotNatrStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotNatrStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotNatrStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotNatrStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotNatrStatesHoverMarkerStatesHoverOptions; inactive?: PlotNatrStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotNatrStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotNatrStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotNatrStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotNatrStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotNatrStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotNatrStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotNatrStatesHoverMarkerOptions; } export interface PlotNatrStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotNatrStatesInactiveOptions { animation?: PlotNatrStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotNatrStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotNatrStatesOptions { /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotNatrStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotNatrStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotNatrStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotNatrStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotNatrStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotNatrStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotNatrStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotNatrStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotNatrStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotNatrStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotNatrStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotNatrStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotNatrStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotNatrStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotNatrStatesSelectMarkerStatesHoverOptions; inactive?: PlotNatrStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotNatrStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotNatrStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotNatrStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotNatrStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotNatrStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotNatrStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotNatrStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotNatrTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotNatrTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotNatrTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) Number of decimals in indicator series. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotNatrZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * Context for the formatter function. */ export interface PlotNetworkDataLabelsFormatterContextObject extends DataLabelsFormatterContextObject { /** * The color of the node. */ color: ColorString; /** * The ID of the node. */ key: string; /** * The point (node) object. The node name, if defined, is available through * `this.point.name`. Arrays: `this.point.linksFrom` and * `this.point.linksTo` contains all nodes connected to this point. */ point: Point; } /** * Data labels options */ export interface PlotNetworkDataLabelsOptionsObject extends DataLabelsOptionsObject { /** * The format string specifying what to show for _node_ in the networkgraph. * In v7.0 defaults to `{key}`, since v7.1 defaults to `undefined` and * `formatter` is used instead. */ format: string; /** * Callback JavaScript function to format the data label for a node. Note * that if a `format` is defined, the format takes precedence and the * formatter is ignored. */ formatter?: PlotNetworkDataLabelsFormatterCallbackFunction; /** * The format string specifying what to show for _links_ in the * networkgraph. (Default: `undefined`) */ linkFormat: string; /** * Callback to format data labels for _links_ in the sankey diagram. The * `linkFormat` option takes precedence over the `linkFormatter`. */ linkFormatter?: PlotNetworkDataLabelsFormatterCallbackFunction; /** * Options for a _link_ label text which should follow link connection. * **Note:** Only SVG-based renderer supports this option. */ linkTextPath: PlotNetworkDataLabelsTextPath; /** * Options for a _node_ label text which should follow marker's shape. * **Note:** Only SVG-based renderer supports this option. */ textPath: PlotNetworkDataLabelsTextPath; } /** * **Note:** Only SVG-based renderer supports this option. */ export interface PlotNetworkDataLabelsTextPath { /** * Presentation attributes for the text path. */ attributes: SVGAttributes; /** * Enable or disable `textPath` option for link's or marker's data labels. */ enabled?: boolean; } /** * (Highcharts) Keyboard navigation for a series */ export interface PlotNetworkgraphAccessibilityKeyboardNavigationOptions { /** * (Highcharts) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highcharts) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotNetworkgraphAccessibilityOptions { /** * (Highcharts) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highcharts) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highcharts) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotNetworkgraphAccessibilityKeyboardNavigationOptions); /** * (Highcharts) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotNetworkgraphConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotNetworkgraphConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotNetworkgraphConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotNetworkgraphConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotNetworkgraphConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotNetworkgraphConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotNetworkgraphConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotNetworkgraphDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotNetworkgraphEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotNetworkgraphLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotNetworkgraphLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotNetworkgraphLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotNetworkgraphLastVisiblePriceLabelOptions; } export interface PlotNetworkgraphLayoutAlgorithmOptions { /** * (Highcharts) Approximation used to calculate repulsive forces affecting * nodes. By default, when calculateing net force, nodes are compared * against each other, which gives O(N^2) complexity. Using Barnes-Hut * approximation, we decrease this to O(N log N), but the resulting graph * will have different layout. Barnes-Hut approximation divides space into * rectangles via quad tree, where forces exerted on nodes are calculated * directly for nearby cells, and for all others, cells are treated as a * separate node with center of mass. */ approximation?: OptionsApproximationValue; /** * (Highcharts) Attraction force applied on a node which is conected to * another node by a link. Passed are two arguments: * * - `d` - which is current distance between two nodes * * - `k` - which is desired distance between two nodes * * In `verlet` integration, defaults to: `function (d, k) { return (k - d) / * d; }` */ attractiveForce?: Function; /** * (Highcharts) Experimental. Enables live simulation of the algorithm * implementation. All nodes are animated as the forces applies on them. */ enableSimulation?: boolean; /** * (Highcharts) Friction applied on forces to prevent nodes rushing to fast * to the desired positions. */ friction?: number; /** * (Highcharts) Gravitational const used in the barycenter force of the * algorithm. */ gravitationalConstant?: number; /** * (Highcharts) When `initialPositions` are set to 'circle', * `initialPositionRadius` is a distance from the center of circle, in which * nodes are created. */ initialPositionRadius?: number; /** * (Highcharts) Initial layout algorithm for positioning nodes. Can be one * of built-in options ("circle", "random") or a function where positions * should be set on each node (`this.nodes`) as `node.plotX` and * `node.plotY` */ initialPositions?: ("circle"|"random"|Function); /** * (Highcharts) Integration type. Available options are `'euler'` and * `'verlet'`. Integration determines how forces are applied on particles. * In Euler integration, force is applied direct as `newPosition += * velocity;`. In Verlet integration, new position is based on a previous * posittion without velocity: `newPosition += previousPosition - * newPosition`. * * Note that different integrations give different results as forces are * different. * * In Highcharts v7.0.x only `'euler'` integration was supported. */ integration?: OptionsIntegrationValue; /** * (Highcharts) Max number of iterations before algorithm will stop. In * general, algorithm should find positions sooner, but when rendering huge * number of nodes, it is recommended to increase this value as finding * perfect graph positions can require more time. */ maxIterations?: number; /** * (Highcharts) Verlet integration only. Max speed that node can get in one * iteration. In terms of simulation, it's a maximum translation (in pixels) * that node can move (in both, x and y, dimensions). While `friction` is * applied on all nodes, max speed is applied only for nodes that move very * fast, for example small or disconnected ones. */ maxSpeed?: number; /** * (Highcharts) Repulsive force applied on a node. Passed are two arguments: * * - `d` - which is current distance between two nodes * * - `k` - which is desired distance between two nodes * * In `verlet` integration, defaults to: `function (d, k) { return (k - d) / * d * (k > d ? 1 : 0) }` */ repulsiveForce?: Function; /** * (Highcharts) Barnes-Hut approximation only. Deteremines when distance * between cell and node is small enough to caculate forces. Value of * `theta` is compared directly with quotient `s / d`, where `s` is the size * of the cell, and `d` is distance between center of cell's mass and * currently compared node. */ theta?: number; /** * (Highcharts) Type of the algorithm used when positioning nodes. */ type?: "reingold-fruchterman"; } /** * (Highcharts) Link style options */ export interface PlotNetworkgraphLinkOptions { /** * (Highcharts) Color of the link between two nodes. */ color?: string; /** * (Highcharts) A name for the dash style to use for links. */ dashStyle?: string; /** * (Highcharts) Width (px) of the link between two nodes. */ width?: number; } /** * (Highcharts) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotNetworkgraphMarkerOptions { /** * (Highcharts) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highcharts) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highcharts) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highcharts) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts) The radius of the point marker. */ radius?: number; /** * (Highcharts) States for a single point marker. */ states?: PlotNetworkgraphMarkerStatesOptions; /** * (Highcharts) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts) Animation when hovering over the marker. */ export interface PlotNetworkgraphMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts) The hover state for a single point marker. */ export interface PlotNetworkgraphMarkerStatesHoverOptions { /** * (Highcharts) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotNetworkgraphMarkerStatesHoverAnimationOptions); /** * (Highcharts) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highcharts) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } /** * (Highcharts) Animation when not hovering over the node. */ export interface PlotNetworkgraphMarkerStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts) The opposite state of a hover for a single point node. Applied * to all not connected nodes to the hovered one. */ export interface PlotNetworkgraphMarkerStatesInactiveOptions { /** * (Highcharts) Animation when not hovering over the node. */ animation?: (boolean|AnimationOptionsObject|PlotNetworkgraphMarkerStatesInactiveAnimationOptions); /** * (Highcharts) Opacity of inactive markers. */ opacity?: number; } /** * (Highcharts) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotNetworkgraphMarkerStatesNormalOptions { /** * (Highcharts) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts) States for a single point marker. */ export interface PlotNetworkgraphMarkerStatesOptions { /** * (Highcharts) The hover state for a single point marker. */ hover?: PlotNetworkgraphMarkerStatesHoverOptions; /** * (Highcharts) The opposite state of a hover for a single point node. * Applied to all not connected nodes to the hovered one. */ inactive?: PlotNetworkgraphMarkerStatesInactiveOptions; /** * (Highcharts) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotNetworkgraphMarkerStatesNormalOptions; /** * (Highcharts) The appearance of the point marker when selected. In order * to allow a point to be selected, set the `series.allowPointSelect` option * to true. */ select?: PlotNetworkgraphMarkerStatesSelectOptions; } /** * (Highcharts) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotNetworkgraphMarkerStatesSelectOptions { /** * (Highcharts) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts) A networkgraph is a type of relationship chart, where * connnections (links) attracts nodes (points) and other nodes repulse each * other. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `networkgraph` series are defined in * plotOptions.networkgraph. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotNetworkgraphOptions { /** * (Highcharts) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotNetworkgraphAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highcharts) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highcharts) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highcharts) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotNetworkgraphConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highcharts) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highcharts) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotNetworkgraphDataGroupingOptions; /** * (Highcharts) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: PlotNetworkDataLabelsOptionsObject; /** * (Highcharts) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts) Flag to determine if nodes are draggable or not. */ draggable?: boolean; /** * (Highcharts) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotNetworkgraphEventsOptions; /** * (Highcharts) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highcharts) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts) Export-data module required. When set to `false` will * prevent the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts) An array specifying which option maps to which key in the * data point array. This makes it convenient to work with unstructured data * arrays from different sources. */ keys?: Array<string>; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotNetworkgraphLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotNetworkgraphLastVisiblePriceOptions; layoutAlgorithm?: PlotNetworkgraphLayoutAlgorithmOptions; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts) Link style options */ link?: PlotNetworkgraphLinkOptions; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts) Options for the point markers of line-like series. * Properties like `fillColor`, `lineColor` and `lineWidth` define the * visual appearance of the markers. Other series types, like column series, * don't have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotNetworkgraphMarkerOptions; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highcharts) Properties for each single point. */ point?: PlotNetworkgraphPointOptions; /** * (Highcharts) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) The width of each point on the x axis. For example in a * column chart with one value each day, the pointRange would be 1 day (= 24 * * 3600 * * * 1000 milliseconds). This is normally computed automatically, but this * option can be used to override the automatic value. */ pointRange?: number; /** * (Highcharts) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highcharts) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highcharts) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts) If set to `true`, the accessibility module will skip past * the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; states?: PlotNetworkgraphStatesOptions; /** * (Highcharts) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotNetworkgraphTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) The parameter allows setting line series type and use OHLC * indicators. Data in OHLC format is required. */ useOhlcData?: boolean; /** * (Highcharts) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotNetworkgraphZonesOptions>; } /** * (Highcharts) Events for each single point. */ export interface PlotNetworkgraphPointEventsOptions { /** * (Highcharts) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts) Callback that fires when the point is dropped. The * parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts) Fires when the point is removed using the `.remove()` * method. One parameter, `event`, is passed to the function. Returning * `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts) Fires when the point is unselected either programmatically * or following a click on the point. One parameter, `event`, is passed to * the function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) Properties for each single point. */ export interface PlotNetworkgraphPointOptions { /** * (Highcharts) Events for each single point. */ events?: PlotNetworkgraphPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotNetworkgraphStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotNetworkgraphStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotNetworkgraphStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotNetworkgraphStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotNetworkgraphStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotNetworkgraphStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotNetworkgraphStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotNetworkgraphStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotNetworkgraphStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotNetworkgraphStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotNetworkgraphStatesHoverMarkerStatesHoverOptions; inactive?: PlotNetworkgraphStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotNetworkgraphStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotNetworkgraphStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotNetworkgraphStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotNetworkgraphStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotNetworkgraphStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotNetworkgraphStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotNetworkgraphStatesHoverMarkerOptions; } /** * (Highcharts) Animation when not hovering over the node. */ export interface PlotNetworkgraphStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts) The opposite state of a hover for a single point link. Applied * to all links that are not comming from the hovered node. */ export interface PlotNetworkgraphStatesInactiveOptions { /** * (Highcharts) Animation when not hovering over the node. */ animation?: (boolean|AnimationOptionsObject|PlotNetworkgraphStatesInactiveAnimationOptions); /** * (Highcharts) Opacity of inactive links. */ linkOpacity?: number; /** * (Highcharts) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highcharts) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotNetworkgraphStatesNormalOptions { /** * (Highcharts) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotNetworkgraphStatesOptions { /** * (Highcharts) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotNetworkgraphStatesHoverOptions; /** * (Highcharts) The opposite state of a hover for a single point link. * Applied to all links that are not comming from the hovered node. */ inactive?: PlotNetworkgraphStatesInactiveOptions; /** * (Highcharts) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotNetworkgraphStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotNetworkgraphStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotNetworkgraphStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotNetworkgraphStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotNetworkgraphStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotNetworkgraphStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotNetworkgraphStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotNetworkgraphStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotNetworkgraphStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotNetworkgraphStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotNetworkgraphStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotNetworkgraphStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotNetworkgraphStatesSelectMarkerStatesHoverOptions; inactive?: PlotNetworkgraphStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotNetworkgraphStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotNetworkgraphStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotNetworkgraphStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotNetworkgraphStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotNetworkgraphStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotNetworkgraphStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotNetworkgraphStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotNetworkgraphTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotNetworkgraphTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotNetworkgraphTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highcharts) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts) The name of a symbol to use for the border around the * tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highcharts) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts) How many decimals to show in each series' y value. This is * overridable in each series' tooltip options object. The default is to * preserve all decimals. */ valueDecimals?: number; /** * (Highcharts) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotNetworkgraphZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotOhlcAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotOhlcAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotOhlcAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotOhlcAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotOhlcConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotOhlcConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotOhlcConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotOhlcConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotOhlcConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotOhlcConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotOhlcConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotOhlcDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. Defaults to `5`. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotOhlcDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotOhlcDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotOhlcDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotOhlcDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotOhlcDragDropOptions { /** * (Highstock) Allow close value to be dragged individually. Requires * `draggable-points` module. */ draggableClose?: boolean; /** * (Highstock) Allow high value to be dragged individually. Requires * `draggable-points` module. */ draggableHigh?: boolean; /** * (Highstock) Allow low value to be dragged individually. Requires * `draggable-points` module. */ draggableLow?: boolean; /** * (Highstock) Allow open value to be dragged individually. Requires * `draggable-points` module. */ draggableOpen?: boolean; /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotOhlcDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotOhlcDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotOhlcEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotOhlcLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotOhlcLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotOhlcLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotOhlcLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotOhlcLastVisiblePriceLabelOptions; } /** * (Highstock) An OHLC chart is a style of financial chart used to describe * price movements over time. It displays open, high, low and close values per * data point. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `ohlc` series are defined in plotOptions.ohlc. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotOhlcOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotOhlcAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotOhlcAnimationOptions); /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts, Highstock, Gantt) When using automatic point colors pulled * from the global colors or series-specific plotOptions.column.colors * collections, this option determines whether the chart should receive one * color per series or one color per point. * * In styled mode, the `colors` or `series.colors` arrays are not supported, * and instead this option gives the points individual color class names on * the form `highcharts-color-{n}`. */ colorByPoint?: boolean; /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) A series specific or series type specific * color set to apply instead of the global colors when colorByPoint is * true. */ colors?: Array<(ColorString|GradientColorObject|PatternObject)>; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotOhlcConnectorsOptions; /** * (Highcharts, Highstock, Gantt) When the series contains less points than * the crop threshold, all points are drawn, event if the points fall * outside the visible plot area at the current zoom. The advantage of * drawing all points (including markers and columns), is that animation is * performed on updates. On the other hand, when the series contains more * points than the crop threshold, the series data is cropped to only * contain points that fall within the plot area. The advantage of cropping * away invisible points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotOhlcDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) Depth of the columns in a 3D column chart. Requires * `highcharts-3d.js`. */ depth?: number; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotOhlcDragDropOptions; /** * (Highcharts) 3D columns only. The color of the edges. Similar to * `borderColor`, except it defaults to the same color as the column. */ edgeColor?: ColorString; /** * (Highcharts) 3D columns only. The width of the colored edges. */ edgeWidth?: number; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotOhlcEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highcharts, Highstock, Gantt) Whether to group non-stacked columns or to * let them render independent of each other. Non-grouped columns will be * laid out individually and overlap each other. */ grouping?: boolean; /** * (Highcharts, Highstock, Gantt) Padding between each value groups, in x * axis units. */ groupPadding?: number; /** * (Highcharts) The spacing between columns on the Z Axis in a 3D chart. * Requires `highcharts-3d.js`. */ groupZPadding?: number; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highstock) An array specifying which option maps to which key in the * data point array. This makes it convenient to work with unstructured data * arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotOhlcLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotOhlcLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotOhlcLastVisiblePriceOptions; /** * (Highstock) The pixel width of the line/border. Defaults to `1`. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts, Highstock, Gantt) The maximum allowed pixel width for a * column, translated to the height of a bar in a bar chart. This prevents * the columns from becoming too wide when there is a small number of points * in the chart. */ maxPointWidth?: number; /** * (Highcharts, Highstock, Gantt) The minimal height for a column or width * for a bar. By default, 0 values are not shown. To visualize a 0 (or close * to zero) point, set the minimal point length to a pixel value like 3\. In * stacked column charts, minPointLength might not be respected for tightly * packed values. */ minPointLength?: number; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Properties for each single point. */ point?: PlotOhlcPointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, `pointInterval` defines the interval of the x values. For * example, if a series contains one value every decade starting from year * 0, set `pointInterval` to `10`. In true `datetime` axes, the * `pointInterval` is set in milliseconds. * * It can be also be combined with `pointIntervalUnit` to draw irregular * time intervals. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointInterval?: number; /** * (Highcharts, Highstock, Gantt) On datetime series, this allows for * setting the pointInterval to irregular time units, `day`, `month` and * `year`. A day is usually the same as 24 hours, but `pointIntervalUnit` * also takes the DST crossover into consideration when dealing with local * time. Combine this option with `pointInterval` to draw weeks, quarters, 6 * months, 10 years etc. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointIntervalUnit?: OptionsPointIntervalUnitValue; /** * (Highcharts, Highstock, Gantt) Padding between each column or bar, in x * axis units. */ pointPadding?: number; /** * (Highcharts, Highstock, Gantt) Possible values: `"on"`, `"between"`, * `number`. * * In a column chart, when pointPlacement is `"on"`, the point will not * create any padding of the X axis. In a polar column chart this means that * the first column points directly north. If the pointPlacement is * `"between"`, the columns will be laid out between ticks. This is useful * for example for visualising an amount between two points in time or in a * certain sector of a polar chart. * * Since Highcharts 3.0.2, the point placement can also be numeric, where 0 * is on the axis value, -0.5 is between this value and the previous, and * 0.5 is between this value and the next. Unlike the textual options, * numeric point placement options won't affect axis padding. * * Note that pointPlacement needs a pointRange to work. For column series * this is computed, but for line-type series it needs to be set. * * For the `xrange` series type and gantt charts, if the Y axis is a * category axis, the `pointPlacement` applies to the Y axis rather than the * (typically datetime) X axis. * * Defaults to `undefined` in cartesian charts, `"between"` in polar charts. */ pointPlacement?: (number|string); /** * (Highcharts, Highstock, Gantt) The X axis range that each point is valid * for. This determines the width of the column. On a categorized axis, the * range will be 1 by default (one category unit). On linear and datetime * axes, the range will be computed as the distance between the two closest * data points. * * The default `null` means it is computed automatically, but this option * can be used to override the automatic value. */ pointRange?: (number|null); /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, pointStart defines on what value to start. For example, if a * series contains one yearly value starting from 1945, set pointStart to * 1945. */ pointStart?: number; /** * (Highstock) Determines which one of `open`, `high`, `low`, `close` values * should be represented as `point.y`, which is later used to set dataLabel * position and compare. */ pointValKey?: OptionsPointValKeyValue; /** * (Highcharts, Highstock, Gantt) A pixel value specifying a fixed width for * each column or bar. When `null`, the width is calculated from the * `pointPadding` and `groupPadding`. */ pointWidth?: number; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotOhlcStatesOptions; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts) The Y axis value to serve as the base for the columns, for * distinguishing between values above and below a threshold. If `null`, the * columns extend from the padding Y axis minimum. */ threshold?: any; /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotOhlcTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) Line color for up points. */ upColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotOhlcZonesOptions>; } /** * (Highstock) Events for each single point. */ export interface PlotOhlcPointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotOhlcPointOptions { /** * (Highstock) Events for each single point. */ events?: PlotOhlcPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotOhlcStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highstock) Options for the hovered point. These settings override the normal * state options when a point is moused over or touched. */ export interface PlotOhlcStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotOhlcStatesHoverAnimationOptions); /** * (Highcharts, Gantt) A specific border color for the hovered point. * Defaults to inherit the normal state border color. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) How much to brighten the point on * interaction. Requires the main color to be defined in hex or rgb(a) * format. * * In styled mode, the hover brightening is by default replaced with a * fill-opacity set in the `.highcharts-point:hover` rule. */ brightness?: number; /** * (Highcharts, Gantt) A specific color for the hovered point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highstock) The pixel width of the line representing the OHLC point. */ lineWidth?: number; } export interface PlotOhlcStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotOhlcStatesInactiveOptions { animation?: PlotOhlcStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotOhlcStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotOhlcStatesOptions { /** * (Highstock) Options for the hovered point. These settings override the * normal state options when a point is moused over or touched. */ hover?: PlotOhlcStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotOhlcStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotOhlcStatesNormalOptions; /** * (Highcharts, Highstock, Gantt) Options for the selected point. These * settings override the normal state options when a point is selected. */ select?: PlotOhlcStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotOhlcStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock, Gantt) Options for the selected point. These settings * override the normal state options when a point is selected. */ export interface PlotOhlcStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotOhlcStatesSelectAnimationOptions; /** * (Highcharts, Highstock, Gantt) A specific border color for the selected * point. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) A specific color for the selected point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) Enable separate styles for the hovered * series to visualize that the user hovers either the series itself or the * legend. */ enabled?: boolean; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotOhlcTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotOhlcTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotOhlcTooltipDateTimeLabelFormatsOptions|Dictionary<string>); distance?: number; /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) How many decimals to show in each series' y value. This is * overridable in each series' tooltip options object. The default is to * preserve all decimals. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotOhlcZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts, Highstock, Highmaps, Gantt) The plotOptions is a wrapper object * for config objects for each series type. The config objects for each series * can also be overridden for each series item as given in the series array. * * Configuration options for the series are given in three levels. Options for * all series in a chart are given in the plotOptions.series object. Then * options for all series of a specific type are given in the plotOptions of * that type, for example `plotOptions.line`. Next, options for one single * series are given in the series array. */ export interface PlotOptions { /** * (Highstock) Acceleration bands (ABANDS). This series requires the * `linkedTo` option to be set and should be loaded after the * `stock/indicators/indicators.js`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `abands` series are defined in plotOptions.abands. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ abands?: PlotAbandsOptions; /** * (Highstock) Accumulation Distribution (AD). This series requires * `linkedTo` option to be set. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `ad` series are defined in plotOptions.ad. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ ad?: PlotAdOptions; /** * (Highstock) Awesome Oscillator. This series requires the `linkedTo` * option to be set and should be loaded after the * `stock/indicators/indicators.js` * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `ao` series are defined in plotOptions.ao. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ ao?: PlotAoOptions; /** * (Highstock) Absolute Price Oscillator. This series requires the * `linkedTo` option to be set and should be loaded after the * `stock/indicators/indicators.js` and `stock/indicators/ema.js`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `apo` series are defined in plotOptions.apo. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ apo?: PlotApoOptions; /** * (Highcharts, Highstock) The area series type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `area` series are defined in plotOptions.area. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ area?: PlotAreaOptions; /** * (Highcharts, Highstock) The area range series is a carteseian series with * higher and lower values for each point along an X axis, where the area * between the values is shaded. Requires `highcharts-more.js`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `arearange` series are defined in * plotOptions.arearange. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ arearange?: PlotArearangeOptions; /** * (Highcharts, Highstock) The area spline series is an area series where * the graph between the points is smoothed into a spline. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `areaspline` series are defined in * plotOptions.areaspline. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ areaspline?: PlotAreasplineOptions; /** * (Highcharts, Highstock) The area spline range is a cartesian series type * with higher and lower Y values along an X axis. The area inside the range * is colored, and the graph outlining the area is a smoothed spline. * Requires `highcharts-more.js`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `areasplinerange` series are defined in * plotOptions.areasplinerange. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ areasplinerange?: PlotAreasplinerangeOptions; /** * (Highstock) Aroon. This series requires the `linkedTo` option to be set * and should be loaded after the `stock/indicators/indicators.js`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `aroon` series are defined in plotOptions.aroon. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ aroon?: PlotAroonOptions; /** * (Highstock) Aroon Oscillator. This series requires the `linkedTo` option * to be set and should be loaded after the `stock/indicators/indicators.js` * and `stock/indicators/aroon.js`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `aroonoscillator` series are defined in * plotOptions.aroonoscillator. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ aroonoscillator?: PlotAroonoscillatorOptions; /** * (Highstock) Average true range indicator (ATR). This series requires * `linkedTo` option to be set. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `atr` series are defined in plotOptions.atr. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ atr?: PlotAtrOptions; /** * (Highcharts) A bar series is a special type of column series where the * columns are horizontal. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `bar` series are defined in plotOptions.bar. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ bar?: PlotBarOptions; /** * (Highstock) Bollinger bands (BB). This series requires the `linkedTo` * option to be set and should be loaded after the * `stock/indicators/indicators.js` file. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `bb` series are defined in plotOptions.bb. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ bb?: PlotBbOptions; /** * (Highcharts) A bell curve is an areaspline series which represents the * probability density function of the normal distribution. It calculates * mean and standard deviation of the base series data and plots the curve * according to the calculated parameters. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `bellcurve` series are defined in * plotOptions.bellcurve. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ bellcurve?: PlotBellcurveOptions; /** * (Highcharts) A box plot is a convenient way of depicting groups of data * through their five-number summaries: the smallest observation (sample * minimum), lower quartile (Q1), median (Q2), upper quartile (Q3), and * largest observation (sample maximum). * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `boxplot` series are defined in plotOptions.boxplot. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ boxplot?: PlotBoxplotOptions; /** * (Highcharts, Highstock) A bubble series is a three dimensional series * type where each point renders an X, Y and Z value. Each points is drawn * as a bubble where the position along the X and Y axes mark the X and Y * values, and the size of the bubble relates to the Z value. Requires * `highcharts-more.js`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `bubble` series are defined in plotOptions.bubble. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ bubble?: PlotBubbleOptions; /** * (Highcharts) A bullet graph is a variation of a bar graph. The bullet * graph features a single measure, compares it to a target, and displays it * in the context of qualitative ranges of performance that could be set * using plotBands on yAxis. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `bullet` series are defined in plotOptions.bullet. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ bullet?: PlotBulletOptions; /** * (Highstock) A candlestick chart is a style of financial chart used to * describe price movements over time. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `candlestick` series are defined in * plotOptions.candlestick. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ candlestick?: PlotCandlestickOptions; /** * (Highstock) Commodity Channel Index (CCI). This series requires * `linkedTo` option to be set. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `cci` series are defined in plotOptions.cci. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ cci?: PlotCciOptions; /** * (Highstock) Chaikin Oscillator. This series requires the `linkedTo` * option to be set and should be loaded after the * `stock/indicators/indicators.js` and `stock/indicators/ema.js`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `chaikin` series are defined in plotOptions.chaikin. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ chaikin?: PlotChaikinOptions; /** * (Highstock) Chaikin Money Flow indicator (cmf). * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `cmf` series are defined in plotOptions.cmf. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ cmf?: PlotCmfOptions; /** * (Highcharts, Highstock) Column series display one column per value along * an X axis. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `column` series are defined in plotOptions.column. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ column?: PlotColumnOptions; /** * (Highcharts, Highstock) Column pyramid series display one pyramid per * value along an X axis. Requires `highcharts-more.js`. To display * horizontal pyramids, set chart.inverted to `true`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `columnpyramid` series are defined in * plotOptions.columnpyramid. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ columnpyramid?: PlotColumnpyramidOptions; /** * (Highcharts, Highstock) The column range is a cartesian series type with * higher and lower Y values along an X axis. Requires `highcharts-more.js`. * To display horizontal bars, set chart.inverted to `true`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `columnrange` series are defined in * plotOptions.columnrange. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ columnrange?: PlotColumnrangeOptions; /** * (Highcharts) A cylinder graph is a variation of a 3d column graph. The * cylinder graph features cylindrical points. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `cylinder` series are defined in plotOptions.cylinder. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ cylinder?: PlotCylinderOptions; /** * (Highstock) Normalized average true range indicator (NATR). This series * requires `linkedTo` option to be set and should be loaded after the * `stock/indicators/indicators.js` and `stock/indicators/ema.js`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `dema` series are defined in plotOptions.dema. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ dema?: PlotDemaOptions; /** * (Highcharts) A dependency wheel chart is a type of flow diagram, where * all nodes are laid out in a circle, and the flow between the are drawn as * link bands. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `dependencywheel` series are defined in * plotOptions.dependencywheel. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ dependencywheel?: PlotDependencywheelOptions; /** * (Highstock) Detrended Price Oscillator. This series requires the * `linkedTo` option to be set and should be loaded after the * `stock/indicators/indicators.js`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `dpo` series are defined in plotOptions.dpo. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ dpo?: PlotDpoOptions; /** * (Highstock) Exponential moving average indicator (EMA). This series * requires the `linkedTo` option to be set. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `ema` series are defined in plotOptions.ema. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ ema?: PlotEmaOptions; /** * (Highcharts, Highstock) Error bars are a graphical representation of the * variability of data and are used on graphs to indicate the error, or * uncertainty in a reported measurement. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `errorbar` series are defined in plotOptions.errorbar. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ errorbar?: PlotErrorbarOptions; /** * (Highstock) Flags are used to mark events in stock charts. They can be * added on the timeline, or attached to a specific series. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `flags` series are defined in plotOptions.flags. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ flags?: PlotFlagsOptions; /** * (Highcharts) Funnel charts are a type of chart often used to visualize * stages in a sales project, where the top are the initial stages with the * most clients. It requires that the modules/funnel.js file is loaded. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `funnel` series are defined in plotOptions.funnel. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ funnel?: PlotFunnelOptions; /** * (Highcharts) A funnel3d is a 3d version of funnel series type. Funnel * charts are a type of chart often used to visualize stages in a sales * project, where the top are the initial stages with the most clients. * * It requires that the `highcharts-3d.js`, `cylinder.js` and `funnel3d.js` * module are loaded. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `funnel3d` series are defined in plotOptions.funnel3d. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ funnel3d?: PlotFunnel3dOptions; /** * (Gantt) A `gantt` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `gantt` series are defined in plotOptions.gantt. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ gantt?: PlotGanttOptions; /** * (Highcharts) Gauges are circular plots displaying one or more values with * a dial pointing to values along the perimeter. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `gauge` series are defined in plotOptions.gauge. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ gauge?: PlotGaugeOptions; /** * (Highcharts, Highmaps) A heatmap is a graphical representation of data * where the individual values contained in a matrix are represented as * colors. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `heatmap` series are defined in plotOptions.heatmap. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ heatmap?: PlotHeatmapOptions; /** * (Highcharts) A histogram is a column series which represents the * distribution of the data set in the base series. Histogram splits data * into bins and shows their frequencies. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `histogram` series are defined in * plotOptions.histogram. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ histogram?: PlotHistogramOptions; /** * (Highstock) Ichimoku Kinko Hyo (IKH). This series requires `linkedTo` * option to be set. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `ikh` series are defined in plotOptions.ikh. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ ikh?: PlotIkhOptions; /** * (Highcharts) An item chart is an infographic chart where a number of * items are laid out in either a rectangular or circular pattern. It can be * used to visualize counts within a group, or for the circular pattern, * typically a parliament. * * The circular layout has much in common with a pie chart. Many of the item * series options, like `center`, `size` and data label positioning, are * inherited from the pie series and don't apply for rectangular layouts. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `item` series are defined in plotOptions.item. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ item?: PlotItemOptions; /** * (Highstock) Keltner Channels. This series requires the `linkedTo` option * to be set and should be loaded after the * `stock/indicators/indicators.js`, `stock/indicators/atr.js`, and * `stock/ema/.js`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `keltnerchannels` series are defined in * plotOptions.keltnerchannels. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ keltnerchannels?: PlotKeltnerchannelsOptions; /** * (Highcharts, Highstock) A line series displays information as a series of * data points connected by straight line segments. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `line` series are defined in plotOptions.line. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ line?: PlotLineOptions; /** * (Highstock) Linear regression indicator. This series requires `linkedTo` * option to be set. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `linearregression` series are defined in * plotOptions.linearregression. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ linearregression?: PlotLinearregressionOptions; /** * (Highstock) Linear regression angle indicator. This series requires * `linkedTo` option to be set. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `linearregressionangle` series are defined in * plotOptions.linearregressionangle. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ linearregressionangle?: PlotLinearregressionangleOptions; /** * (Highstock) Linear regression intercept indicator. This series requires * `linkedTo` option to be set. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `linearregressionintercept` series are defined in * plotOptions.linearregressionintercept. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ linearregressionintercept?: PlotLinearregressioninterceptOptions; /** * (Highstock) Linear regression slope indicator. This series requires * `linkedTo` option to be set. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `linearregressionslope` series are defined in * plotOptions.linearregressionslope. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ linearregressionslope?: PlotLinearregressionslopeOptions; /** * (Highstock) Moving Average Convergence Divergence (MACD). This series * requires `linkedTo` option to be set and should be loaded after the * `stock/indicators/indicators.js` and `stock/indicators/ema.js`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `macd` series are defined in plotOptions.macd. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ macd?: PlotMacdOptions; /** * (Highmaps) The map series is used for basic choropleth maps, where each * map area has a color based on its value. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `map` series are defined in plotOptions.map. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ map?: PlotMapOptions; /** * (Highmaps) A map bubble series is a bubble series laid out on top of a * map series, where each bubble is tied to a specific map area. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `mapbubble` series are defined in * plotOptions.mapbubble. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ mapbubble?: PlotMapbubbleOptions; /** * (Highmaps) A mapline series is a special case of the map series where the * value colors are applied to the strokes rather than the fills. It can * also be used for freeform drawing, like dividers, in the map. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `mapline` series are defined in plotOptions.mapline. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ mapline?: PlotMaplineOptions; /** * (Highmaps) A mappoint series is a special form of scatter series where * the points can be laid out in map coordinates on top of a map. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `mappoint` series are defined in plotOptions.mappoint. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ mappoint?: PlotMappointOptions; /** * (Highstock) Money Flow Index. This series requires `linkedTo` option to * be set and should be loaded after the `stock/indicators/indicators.js` * file. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `mfi` series are defined in plotOptions.mfi. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ mfi?: PlotMfiOptions; /** * (Highstock) Momentum. This series requires `linkedTo` option to be set. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `momentum` series are defined in plotOptions.momentum. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ momentum?: PlotMomentumOptions; /** * (Highstock) Normalized average true range indicator (NATR). This series * requires `linkedTo` option to be set and should be loaded after the * `stock/indicators/indicators.js` and `stock/indicators/atr.js`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `natr` series are defined in plotOptions.natr. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ natr?: PlotNatrOptions; /** * (Highcharts) A networkgraph is a type of relationship chart, where * connnections (links) attracts nodes (points) and other nodes repulse each * other. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `networkgraph` series are defined in * plotOptions.networkgraph. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ networkgraph?: PlotNetworkgraphOptions; /** * (Highstock) An OHLC chart is a style of financial chart used to describe * price movements over time. It displays open, high, low and close values * per data point. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `ohlc` series are defined in plotOptions.ohlc. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ ohlc?: PlotOhlcOptions; /** * (Highcharts) An organization chart is a diagram that shows the structure * of an organization and the relationships and relative ranks of its parts * and positions. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `organization` series are defined in * plotOptions.organization. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ organization?: PlotOrganizationOptions; /** * (Highcharts) A packed bubble series is a two dimensional series type, * where each point renders a value in X, Y position. Each point is drawn as * a bubble where the bubbles don't overlap with each other and the radius * of the bubble relates to the value. Requires `highcharts-more.js`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `packedbubble` series are defined in * plotOptions.packedbubble. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ packedbubble?: PlotPackedbubbleOptions; /** * (Highcharts) A pareto diagram is a type of chart that contains both bars * and a line graph, where individual values are represented in descending * order by bars, and the cumulative total is represented by the line. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `pareto` series are defined in plotOptions.pareto. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ pareto?: PlotParetoOptions; /** * (Highstock) Price channel (PC). This series requires the `linkedTo` * option to be set and should be loaded after the * `stock/indicators/indicators.js`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `pc` series are defined in plotOptions.pc. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ pc?: PlotPcOptions; /** * (Highcharts) A pie chart is a circular graphic which is divided into * slices to illustrate numerical proportion. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `pie` series are defined in plotOptions.pie. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ pie?: PlotPieOptions; /** * (Highstock) Pivot points indicator. This series requires the `linkedTo` * option to be set and should be loaded after * `stock/indicators/indicators.js` file. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `pivotpoints` series are defined in * plotOptions.pivotpoints. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ pivotpoints?: PlotPivotpointsOptions; /** * (Highcharts, Highstock) A polygon series can be used to draw any freeform * shape in the cartesian coordinate system. A fill is applied with the * `color` option, and stroke is applied through `lineWidth` and `lineColor` * options. Requires the `highcharts-more.js` file. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `polygon` series are defined in plotOptions.polygon. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ polygon?: PlotPolygonOptions; /** * (Highstock) Percentage Price Oscillator. This series requires the * `linkedTo` option to be set and should be loaded after the * `stock/indicators/indicators.js` and `stock/indicators/ema.js`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `ppo` series are defined in plotOptions.ppo. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ ppo?: PlotPpoOptions; /** * (Highstock) Price envelopes indicator based on SMA calculations. This * series requires the `linkedTo` option to be set and should be loaded * after the `stock/indicators/indicators.js` file. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `priceenvelopes` series are defined in * plotOptions.priceenvelopes. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ priceenvelopes?: PlotPriceenvelopesOptions; /** * (Highstock) Parabolic SAR. This series requires `linkedTo` option to be * set and should be loaded after `stock/indicators/indicators.js` file. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `psar` series are defined in plotOptions.psar. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ psar?: PlotPsarOptions; /** * (Highcharts) A pyramid series is a special type of funnel, without neck * and reversed by default. Requires the funnel module. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `pyramid` series are defined in plotOptions.pyramid. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ pyramid?: PlotPyramidOptions; /** * (Highcharts) A pyramid3d is a 3d version of pyramid series type. Pyramid * charts are a type of chart often used to visualize stages in a sales * project, where the top are the initial stages with the most clients. * * It requires that the `highcharts-3d.js`, `cylinder.js`, `funnel3d.js` and * `pyramid3d` modules are loaded. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `pyramid3d` series are defined in * plotOptions.pyramid3d. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ pyramid3d?: PlotPyramid3dOptions; /** * (Highstock) Rate of change indicator (ROC). The indicator value for each * point is defined as: * * `(C - Cn) / Cn * 100` * * where: `C` is the close value of the point of the same x in the linked * series and `Cn` is the close value of the point `n` periods ago. `n` is * set through period. * * This series requires `linkedTo` option to be set. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `roc` series are defined in plotOptions.roc. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ roc?: PlotRocOptions; /** * (Highstock) Relative strength index (RSI) technical indicator. This * series requires the `linkedTo` option to be set and should be loaded * after the `stock/indicators/indicators.js` file. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `rsi` series are defined in plotOptions.rsi. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ rsi?: PlotRsiOptions; /** * (Highcharts) A sankey diagram is a type of flow diagram, in which the * width of the link between two nodes is shown proportionally to the flow * quantity. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `sankey` series are defined in plotOptions.sankey. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ sankey?: PlotSankeyOptions; /** * (Highcharts, Highstock) A scatter plot uses cartesian coordinates to * display values for two variables for a set of data. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `scatter` series are defined in plotOptions.scatter. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ scatter?: PlotScatterOptions; /** * (Highcharts) A 3D scatter plot uses x, y and z coordinates to display * values for three variables for a set of data. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `scatter3d` series are defined in * plotOptions.scatter3d. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ scatter3d?: PlotScatter3dOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) General options for all series * types. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `line` series are defined in plotOptions.line. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ series?: PlotSeriesOptions; /** * (Highstock) Simple moving average indicator (SMA). This series requires * `linkedTo` option to be set. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `sma` series are defined in plotOptions.sma. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ sma?: PlotSmaOptions; /** * (Highcharts) A solid gauge is a circular gauge where the value is * indicated by a filled arc, and the color of the arc may variate with the * value. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `solidgauge` series are defined in * plotOptions.solidgauge. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ solidgauge?: PlotSolidgaugeOptions; /** * (Highcharts, Highstock) A spline series is a special type of line series, * where the segments between the data points are smoothed. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `spline` series are defined in plotOptions.spline. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ spline?: PlotSplineOptions; /** * (Highstock) Stochastic oscillator. This series requires the `linkedTo` * option to be set and should be loaded after the * `stock/indicators/indicators.js` file. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `stochastic` series are defined in * plotOptions.stochastic. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ stochastic?: PlotStochasticOptions; /** * (Highcharts, Highstock) A streamgraph is a type of stacked area graph * which is displaced around a central axis, resulting in a flowing, organic * shape. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `streamgraph` series are defined in * plotOptions.streamgraph. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ streamgraph?: PlotStreamgraphOptions; /** * (Highcharts) A Sunburst displays hierarchical data, where a level in the * hierarchy is represented by a circle. The center represents the root node * of the tree. The visualization bears a resemblance to both treemap and * pie charts. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `sunburst` series are defined in plotOptions.sunburst. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ sunburst?: PlotSunburstOptions; /** * (Highstock) Supertrend indicator. This series requires the `linkedTo` * option to be set and should be loaded after the * `stock/indicators/indicators.js` and `stock/indicators/sma.js`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `supertrend` series are defined in * plotOptions.supertrend. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ supertrend?: PlotSupertrendOptions; /** * (Highstock) Normalized average true range indicator (NATR). This series * requires `linkedTo` option to be set and should be loaded after the * `stock/indicators/indicators.js` and `stock/indicators/ema.js`. * * Requires `https://code.highcharts.com/stock/indicators/ema.js`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `tema` series are defined in plotOptions.tema. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ tema?: PlotTemaOptions; /** * (Highcharts, Highmaps) A tilemap series is a type of heatmap where the * tile shapes are configurable. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `tilemap` series are defined in plotOptions.tilemap. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ tilemap?: PlotTilemapOptions; /** * (Highcharts) The timeline series presents given events along a drawn * line. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `timeline` series are defined in plotOptions.timeline. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ timeline?: PlotTimelineOptions; /** * (Highcharts) A treemap displays hierarchical data using nested * rectangles. The data can be laid out in varying ways depending on * options. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `treemap` series are defined in plotOptions.treemap. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ treemap?: PlotTreemapOptions; /** * (Highstock) Normalized average true range indicator (NATR). This series * requires `linkedTo` option to be set. * * Requires https://code.highcharts.com/stock/indicators/ema.js and * https://code.highcharts.com/stock/indicators/tema.js. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `trix` series are defined in plotOptions.trix. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ trix?: PlotTrixOptions; /** * (Highcharts) A variable pie series is a two dimensional series type, * where each point renders an Y and Z value. Each point is drawn as a pie * slice where the size (arc) of the slice relates to the Y value and the * radius of pie slice relates to the Z value. Requires * `highcharts-more.js`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `variablepie` series are defined in * plotOptions.variablepie. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ variablepie?: PlotVariablepieOptions; /** * (Highcharts) A variwide chart (related to marimekko chart) is a column * chart with a variable width expressing a third dimension. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `variwide` series are defined in plotOptions.variwide. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ variwide?: PlotVariwideOptions; /** * (Highstock) Volume By Price indicator. * * This series requires `linkedTo` option to be set. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `vbp` series are defined in plotOptions.vbp. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ vbp?: PlotVbpOptions; /** * (Highcharts, Highstock) A vector plot is a type of cartesian chart where * each point has an X and Y position, a length and a direction. Vectors are * drawn as arrows. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `vector` series are defined in plotOptions.vector. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ vector?: PlotVectorOptions; /** * (Highcharts) A Venn diagram displays all possible logical relations * between a collection of different sets. The sets are represented by * circles, and the relation between the sets are displayed by the overlap * or lack of overlap between them. The venn diagram is a special case of * Euler diagrams, which can also be displayed by this series type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `venn` series are defined in plotOptions.venn. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ venn?: PlotVennOptions; /** * (Highstock) Volume Weighted Average Price indicator. * * This series requires `linkedTo` option to be set. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `vwap` series are defined in plotOptions.vwap. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ vwap?: PlotVwapOptions; /** * (Highcharts) A waterfall chart displays sequentially introduced positive * or negative values in cumulative columns. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `waterfall` series are defined in * plotOptions.waterfall. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ waterfall?: PlotWaterfallOptions; /** * (Highstock) Williams %R. This series requires the `linkedTo` option to be * set and should be loaded after the `stock/indicators/indicators.js`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `williamsr` series are defined in * plotOptions.williamsr. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ williamsr?: PlotWilliamsrOptions; /** * (Highcharts, Highstock) Wind barbs are a convenient way to represent wind * speed and direction in one graphical form. Wind direction is given by the * stem direction, and wind speed by the number and shape of barbs. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `windbarb` series are defined in plotOptions.windbarb. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ windbarb?: PlotWindbarbOptions; /** * (Highstock) Weighted moving average indicator (WMA). This series requires * `linkedTo` option to be set. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `wma` series are defined in plotOptions.wma. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ wma?: PlotWmaOptions; /** * (Highcharts) A word cloud is a visualization of a set of words, where the * size and placement of a word is determined by how it is weighted. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `wordcloud` series are defined in * plotOptions.wordcloud. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ wordcloud?: PlotWordcloudOptions; /** * (Highcharts, Highstock, Gantt) The X-range series displays ranges on the * X axis, typically time intervals with a start and end date. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `xrange` series are defined in plotOptions.xrange. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ xrange?: PlotXrangeOptions; /** * (Highstock) Zig Zag indicator. * * This series requires `linkedTo` option to be set. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the * plotOptions.series object. * * 2. Options for all `zigzag` series are defined in plotOptions.zigzag. * * 3. Options for one single series are given in the series instance * array.(see online documentation for example) */ zigzag?: PlotZigzagOptions; } /** * (Highcharts) Keyboard navigation for a series */ export interface PlotOrganizationAccessibilityKeyboardNavigationOptions { /** * (Highcharts) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highcharts) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotOrganizationAccessibilityOptions { /** * (Highcharts) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highcharts) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highcharts) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotOrganizationAccessibilityKeyboardNavigationOptions); /** * (Highcharts) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotOrganizationAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotOrganizationConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotOrganizationConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotOrganizationConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotOrganizationConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotOrganizationConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotOrganizationConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotOrganizationConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotOrganizationDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. Defaults to `10`. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts) Options for the data labels appearing on top of the nodes and * links. For sankey charts, data labels are visible for the nodes by default, * but hidden for links. This is controlled by modifying the `nodeFormat`, and * the `format` that applies to links and is an empty string by default. */ export interface PlotOrganizationDataLabelsOptions { /** * (Highcharts) A callback for defining the format for _nodes_ in the * organization chart. The `nodeFormat` option takes precedence over * `nodeFormatter`. * * In an organization chart, the `nodeFormatter` is a quite complex function * of the available options, striving for a good default layout of cards * with or without images. In organization chart, the data labels come with * `useHTML` set to true, meaning they will be rendered as true HTML above * the SVG. */ nodeFormatter?: any; style?: PlotOrganizationDataLabelsStyleOptions; useHTML?: boolean; } export interface PlotOrganizationDataLabelsStyleOptions { fontSize?: string; fontWeight?: string; } /** * (Highcharts) Options for the drag handles. */ export interface PlotOrganizationDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface PlotOrganizationDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotOrganizationDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: PlotOrganizationDragDropGuideBoxDefaultOptions; } /** * (Highcharts) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotOrganizationDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: PlotOrganizationDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotOrganizationDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotOrganizationEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotOrganizationLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotOrganizationLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotOrganizationLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotOrganizationLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotOrganizationLastVisiblePriceLabelOptions; } /** * (Highcharts) Set options on specific levels. Takes precedence over series * options, but not point options. */ export interface PlotOrganizationLevelsOptions { /** * (Highcharts) Can set `borderColor` on all points which lies on the same * level. */ borderColor?: ColorString; /** * (Highcharts) Can set `borderWidth` on all points which lies on the same * level. */ borderWidth?: number; /** * (Highcharts) Can set `color` on all points which lies on the same level. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Can set `colorByPoint` on all points which lies on the same * level. */ colorByPoint?: boolean; /** * (Highcharts) Can set `dataLabels` on all points which lies on the same * level. */ dataLabels?: object; /** * (Highcharts) Decides which level takes effect from the options set in the * levels object. */ level?: number; /** * (Highcharts) Can set `linkOpacity` on all points which lies on the same * level. */ linkOpacity?: number; /** * (Highcharts) Can set `states` on all points which lies on the same level. */ states?: object; } /** * (Highcharts) An organization chart is a diagram that shows the structure of * an organization and the relationships and relative ranks of its parts and * positions. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `organization` series are defined in * plotOptions.organization. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotOrganizationOptions { /** * (Highcharts) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotOrganizationAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotOrganizationAnimationOptions); /** * (Highcharts) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts, Highstock, Gantt) The border color of the node cards. */ borderColor?: ColorString; /** * (Highcharts) The border radius of the node cards. */ borderRadius?: number; /** * (Highcharts, Highstock, Gantt) The width of the border surrounding each * column or bar. Defaults to `1` when there is room for a border, but to * `0` when the columns are so dense that a border would cover the next * column. * * In styled mode, the stroke width can be set with the `.highcharts-point` * rule. */ borderWidth?: number; /** * (Highcharts) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highcharts) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts, Highstock, Gantt) When using automatic point colors pulled * from the global colors or series-specific plotOptions.column.colors * collections, this option determines whether the chart should receive one * color per series or one color per point. * * In styled mode, the `colors` or `series.colors` arrays are not supported, * and instead this option gives the points individual color class names on * the form `highcharts-color-{n}`. */ colorByPoint?: boolean; /** * (Highcharts) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) A series specific or series type specific * color set to apply instead of the global colors when colorByPoint is * true. */ colors?: Array<(ColorString|GradientColorObject|PatternObject)>; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotOrganizationConnectorsOptions; /** * (Highcharts) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotOrganizationDataGroupingOptions; /** * (Highcharts) Options for the data labels appearing on top of the nodes * and links. For sankey charts, data labels are visible for the nodes by * default, but hidden for links. This is controlled by modifying the * `nodeFormat`, and the `format` that applies to links and is an empty * string by default. */ dataLabels?: PlotOrganizationDataLabelsOptions; /** * (Highcharts) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotOrganizationDragDropOptions; /** * (Highcharts) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotOrganizationEventsOptions; /** * (Highcharts) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highcharts) The indentation in pixels of hanging nodes, nodes which * parent has layout set to `hanging`. */ hangingIndent?: number; /** * (Highcharts) Export-data module required. When set to `false` will * prevent the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts) An array specifying which option maps to which key in the * data point array. This makes it convenient to work with unstructured data * arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotOrganizationLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotOrganizationLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotOrganizationLastVisiblePriceOptions; /** * (Highcharts) Set options on specific levels. Takes precedence over series * options, but not point options. */ levels?: Array<PlotOrganizationLevelsOptions>; /** * (Highcharts) The color of the links between nodes. */ linkColor?: ColorString; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts) The line width of the links connecting nodes, in pixels. */ linkLineWidth?: number; /** * (Highcharts) Opacity for the links between nodes in the sankey diagram. */ linkOpacity?: number; /** * (Highcharts) Radius for the rounded corners of the links between nodes. */ linkRadius?: number; /** * (Highcharts, Highstock, Gantt) The minimal height for a column or width * for a bar. By default, 0 values are not shown. To visualize a 0 (or close * to zero) point, set the minimal point length to a pixel value like 3\. In * stacked column charts, minPointLength might not be respected for tightly * packed values. */ minPointLength?: number; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts) The padding between nodes in a sankey diagram or dependency * wheel, in pixels. */ nodePadding?: number; /** * (Highcharts) In a horizontal chart, the width of the nodes in pixels. * Node that most organization charts are vertical, so the name of this * option is counterintuitive. */ nodeWidth?: number; /** * (Highcharts) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highcharts) Properties for each single point. */ point?: PlotOrganizationPointOptions; /** * (Highcharts) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highcharts) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts) If set to `true`, the accessibility module will skip past * the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; states?: PlotOrganizationStatesOptions; /** * (Highcharts) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotOrganizationTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highcharts) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; } /** * (Highcharts) Events for each single point. */ export interface PlotOrganizationPointEventsOptions { /** * (Highcharts) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts) Callback that fires when the point is dropped. The * parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts) Fires when the point is removed using the `.remove()` * method. One parameter, `event`, is passed to the function. Returning * `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts) Fires when the point is unselected either programmatically * or following a click on the point. One parameter, `event`, is passed to * the function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) Properties for each single point. */ export interface PlotOrganizationPointOptions { /** * (Highcharts) Events for each single point. */ events?: PlotOrganizationPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotOrganizationStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock, Gantt) Options for the hovered point. These settings * override the normal state options when a point is moused over or touched. */ export interface PlotOrganizationStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotOrganizationStatesHoverAnimationOptions); /** * (Highcharts, Gantt) A specific border color for the hovered point. * Defaults to inherit the normal state border color. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) How much to brighten the point on * interaction. Requires the main color to be defined in hex or rgb(a) * format. * * In styled mode, the hover brightening is by default replaced with a * fill-opacity set in the `.highcharts-point:hover` rule. */ brightness?: number; /** * (Highcharts, Gantt) A specific color for the hovered point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) Enable separate styles for the hovered * series to visualize that the user hovers either the series itself or the * legend. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) Opacity for the links between nodes in the * sankey diagram in hover mode. */ linkOpacity?: number; } /** * (Highcharts) Animation when not hovering over the marker. */ export interface PlotOrganizationStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts) The opposite state of a hover for a single point node/link. */ export interface PlotOrganizationStatesInactiveOptions { /** * (Highcharts) Animation when not hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotOrganizationStatesInactiveAnimationOptions); /** * (Highcharts) Opacity for the links between nodes in the sankey diagram in * inactive mode. */ linkOpacity?: number; /** * (Highcharts) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highcharts) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotOrganizationStatesNormalOptions { /** * (Highcharts) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotOrganizationStatesOptions { /** * (Highcharts, Highstock, Gantt) Options for the hovered point. These * settings override the normal state options when a point is moused over or * touched. */ hover?: PlotOrganizationStatesHoverOptions; /** * (Highcharts) The opposite state of a hover for a single point node/link. */ inactive?: PlotOrganizationStatesInactiveOptions; /** * (Highcharts) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotOrganizationStatesNormalOptions; /** * (Highcharts, Highstock, Gantt) Options for the selected point. These * settings override the normal state options when a point is selected. */ select?: PlotOrganizationStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotOrganizationStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock, Gantt) Options for the selected point. These settings * override the normal state options when a point is selected. */ export interface PlotOrganizationStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotOrganizationStatesSelectAnimationOptions; /** * (Highcharts, Highstock, Gantt) A specific border color for the selected * point. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) A specific color for the selected point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) Enable separate styles for the hovered * series to visualize that the user hovers either the series itself or the * legend. */ enabled?: boolean; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotOrganizationTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotOrganizationTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotOrganizationTooltipDateTimeLabelFormatsOptions|Dictionary<string>); distance?: number; /** * (Highcharts) Whether the tooltip should follow the pointer or stay fixed * on the item. */ followPointer?: boolean; /** * (Highcharts) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts) The name of a symbol to use for the border around the * tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts) The format string specifying what to show for _nodes_ in * tooltip of a diagram series, as opposed to links. */ nodeFormat?: string; /** * (Highcharts) A callback for defining the format for _nodes_ in the * chart's tooltip, as opposed to links. */ nodeFormatter?: FormatterCallbackFunction<SankeyNodeObject>; /** * (Highcharts) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highcharts) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts) How many decimals to show in each series' y value. This is * overridable in each series' tooltip options object. The default is to * preserve all decimals. */ valueDecimals?: number; /** * (Highcharts) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts) Keyboard navigation for a series */ export interface PlotPackedbubbleAccessibilityKeyboardNavigationOptions { /** * (Highcharts) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highcharts) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotPackedbubbleAccessibilityOptions { /** * (Highcharts) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highcharts) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highcharts) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotPackedbubbleAccessibilityKeyboardNavigationOptions); /** * (Highcharts) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotPackedbubbleAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotPackedbubbleConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotPackedbubbleConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotPackedbubbleConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotPackedbubbleConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotPackedbubbleConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotPackedbubbleConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotPackedbubbleConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotPackedbubbleDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * Context for the formatter function. */ export interface PlotPackedBubbleDataLabelsFormatterContextObject extends DataLabelsFormatterContextObject { /** * The color of the node. */ color: ColorString; /** * The ID of the node. */ key: string; /** * Callback to format data labels for _parentNodes_. The `parentNodeFormat` * option takes precedence over the `parentNodeFormatter`. */ parentNodeFormatter: FormatterCallbackFunction<DataLabelsFormatterContextObject>; /** * Options for a _parentNode_ label text. */ parentNodeTextPath: PlotPackedBubbleDataLabelsTextPath; /** * The point (node) object. The node name, if defined, is available through * `this.point.name`. Arrays: `this.point.linksFrom` and * `this.point.linksTo` contains all nodes connected to this point. */ point: Point; } /** * Data labels options */ export interface PlotPackedBubbleDataLabelsOptionsObject extends DataLabelsOptionsObject { /** * The format string specifying what to show for _node_ in the networkgraph. * In v7.0 defaults to `{key}`, since v7.1 defaults to `undefined` and * `formatter` is used instead. */ format: string; /** * Callback JavaScript function to format the data label for a node. Note * that if a `format` is defined, the format takes precedence and the * formatter is ignored. */ formatter?: PlotPackedBubbleDataLabelsFormatterCallbackFunction; /** * Options for a _node_ label text which should follow marker's shape. * **Note:** Only SVG-based renderer supports this option. */ textPath: PlotPackedBubbleDataLabelsTextPath; } /** * **Note:** Only SVG-based renderer supports this option. */ export interface PlotPackedBubbleDataLabelsTextPath { /** * Presentation attributes for the text path. */ attributes: SVGAttributes; /** * Enable or disable `textPath` option for link's or marker's data labels. */ enabled?: boolean; } /** * (Highcharts) Options for the drag handles. */ export interface PlotPackedbubbleDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface PlotPackedbubbleDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotPackedbubbleDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: PlotPackedbubbleDragDropGuideBoxDefaultOptions; } /** * (Highcharts) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotPackedbubbleDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: PlotPackedbubbleDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotPackedbubbleDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotPackedbubbleEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotPackedbubbleLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotPackedbubbleLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotPackedbubbleLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotPackedbubbleLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotPackedbubbleLastVisiblePriceLabelOptions; } /** * (Highcharts) Options for layout algorithm when simulation is enabled. Inside * there are options to change the speed, padding, initial bubbles positions and * more. */ export interface PlotPackedbubbleLayoutAlgorithmOptions { /** * (Highcharts) The distance between two bubbles, when the algorithm starts * to treat two bubbles as overlapping. The `bubblePadding` is also the * expected distance between all the bubbles on simulation end. */ bubblePadding?: number; /** * (Highcharts) In case of split series, this option allows user to drag and * drop points between series, for changing point related series. */ dragBetweenSeries?: boolean; /** * (Highcharts) Experimental. Enables live simulation of the algorithm * implementation. All nodes are animated as the forces applies on them. */ enableSimulation?: boolean; /** * (Highcharts) Friction applied on forces to prevent nodes rushing to fast * to the desired positions. */ friction?: number; /** * (Highcharts) Gravitational const used in the barycenter force of the * algorithm. */ gravitationalConstant?: number; /** * (Highcharts) When `initialPositions` are set to 'circle', * `initialPositionRadius` is a distance from the center of circle, in which * nodes are created. */ initialPositionRadius?: number; /** * (Highcharts) Initial layout algorithm for positioning nodes. Can be one * of the built-in options ("circle", "random") or a function where * positions should be set on each node (`this.nodes`) as `node.plotX` and * `node.plotY`. */ initialPositions?: ("circle"|"random"|Function); /** * (Highcharts) Integration type. Available options are `'euler'` and * `'verlet'`. Integration determines how forces are applied on particles. * In Euler integration, force is applied direct as `newPosition += * velocity;`. In Verlet integration, new position is based on a previous * posittion without velocity: `newPosition += previousPosition - * newPosition`. * * Note that different integrations give different results as forces are * different. * * In Highcharts v7.0.x only `'euler'` integration was supported. */ integration?: OptionsIntegrationValue; /** * (Highcharts) Max number of iterations before algorithm will stop. In * general, algorithm should find positions sooner, but when rendering huge * number of nodes, it is recommended to increase this value as finding * perfect graph positions can require more time. */ maxIterations?: number; /** * (Highcharts) Max speed that node can get in one iteration. In terms of * simulation, it's a maximum translation (in pixels) that a node can move * (in both, x and y, dimensions). While `friction` is applied on all nodes, * max speed is applied only for nodes that move very fast, for example * small or disconnected ones. */ maxSpeed?: number; /** * (Highcharts) Whether bubbles should interact with their parentNode to * keep them inside. */ parentNodeLimit?: boolean; /** * (Highcharts) Layout algorithm options for parent nodes. */ parentNodeOptions?: PlotPackedbubbleLayoutAlgorithmParentNodeOptions; /** * (Highcharts) Whether series should interact with each other or not. When * `parentNodeLimit` is set to true, thi option should be set to false to * avoid sticking points in wrong series parentNode. */ seriesInteraction?: boolean; /** * (Highcharts) Whether to split series into individual groups or to mix all * series together. */ splitSeries?: string; /** * (Highcharts) Type of the algorithm used when positioning nodes. */ type?: "reingold-fruchterman"; } /** * (Highcharts) Styling options for parentNodes markers. Similar to line.marker * options. */ export interface PlotPackedbubbleLayoutAlgorithmParentNodeMarkerOptions { /** * (Highcharts) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highcharts) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highcharts) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: any; fillOpacity?: number; /** * (Highcharts) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highcharts) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: any; /** * (Highcharts) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts) The radius of the point marker. */ radius?: number; /** * (Highcharts) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts) Layout algorithm options for parent nodes. */ export interface PlotPackedbubbleLayoutAlgorithmParentNodeOptions { /** * (Highcharts) Friction applied on forces to prevent nodes rushing to fast * to the desired positions. */ friction?: number; /** * (Highcharts) Gravitational const used in the barycenter force of the * algorithm. */ gravitationalConstant?: number; /** * (Highcharts) When `initialPositions` are set to 'circle', * `initialPositionRadius` is a distance from the center of circle, in which * nodes are created. */ initialPositionRadius?: number; /** * (Highcharts) Initial layout algorithm for positioning nodes. Can be one * of built-in options ("circle", "random") or a function where positions * should be set on each node (`this.nodes`) as `node.plotX` and * `node.plotY` */ initialPositions?: ("circle"|"random"|Function); /** * (Highcharts) Integration type. Available options are `'euler'` and * `'verlet'`. Integration determines how forces are applied on particles. * In Euler integration, force is applied direct as `newPosition += * velocity;`. In Verlet integration, new position is based on a previous * posittion without velocity: `newPosition += previousPosition - * newPosition`. * * Note that different integrations give different results as forces are * different. * * In Highcharts v7.0.x only `'euler'` integration was supported. */ integration?: OptionsIntegrationValue; /** * (Highcharts) Styling options for parentNodes markers. Similar to * line.marker options. */ marker?: PlotPackedbubbleLayoutAlgorithmParentNodeMarkerOptions; /** * (Highcharts) Max number of iterations before algorithm will stop. In * general, algorithm should find positions sooner, but when rendering huge * number of nodes, it is recommended to increase this value as finding * perfect graph positions can require more time. */ maxIterations?: number; /** * (Highcharts) Verlet integration only. Max speed that node can get in one * iteration. In terms of simulation, it's a maximum translation (in pixels) * that node can move (in both, x and y, dimensions). While `friction` is * applied on all nodes, max speed is applied only for nodes that move very * fast, for example small or disconnected ones. */ maxSpeed?: number; seriesInteraction?: boolean; /** * (Highcharts) Type of the algorithm used when positioning nodes. */ type?: "reingold-fruchterman"; } /** * (Highcharts) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotPackedbubbleMarkerOptions { /** * (Highcharts) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The fill opacity of the bubble markers. */ fillOpacity?: number; /** * (Highcharts) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: any; /** * (Highcharts) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts) States for a single point marker. */ states?: PlotPackedbubbleMarkerStatesOptions; /** * (Highcharts) A predefined shape or symbol for the marker. Possible values * are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on the form * `url(graphic.png)`. Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: (string|SymbolKeyValue); } /** * (Highcharts) Animation when hovering over the marker. */ export interface PlotPackedbubbleMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts) The hover state for a single point marker. */ export interface PlotPackedbubbleMarkerStatesHoverOptions { /** * (Highcharts) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotPackedbubbleMarkerStatesHoverAnimationOptions); /** * (Highcharts) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highcharts) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotPackedbubbleMarkerStatesInactiveOptions { /** * (Highcharts) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotPackedbubbleMarkerStatesNormalOptions { /** * (Highcharts) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts) States for a single point marker. */ export interface PlotPackedbubbleMarkerStatesOptions { /** * (Highcharts) The hover state for a single point marker. */ hover?: PlotPackedbubbleMarkerStatesHoverOptions; inactive?: PlotPackedbubbleMarkerStatesInactiveOptions; /** * (Highcharts) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotPackedbubbleMarkerStatesNormalOptions; /** * (Highcharts) The appearance of the point marker when selected. In order * to allow a point to be selected, set the `series.allowPointSelect` option * to true. */ select?: PlotPackedbubbleMarkerStatesSelectOptions; } /** * (Highcharts) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotPackedbubbleMarkerStatesSelectOptions { /** * (Highcharts) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts) A packed bubble series is a two dimensional series type, where * each point renders a value in X, Y position. Each point is drawn as a bubble * where the bubbles don't overlap with each other and the radius of the bubble * relates to the value. Requires `highcharts-more.js`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `packedbubble` series are defined in * plotOptions.packedbubble. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotPackedbubbleOptions { /** * (Highcharts) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotPackedbubbleAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highcharts) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotPackedbubbleAnimationOptions); /** * (Highcharts) If there are more points in the series than the * `animationLimit`, the animation won't run. Animation affects overall * performance and doesn't work well with heavy data series. */ animationLimit?: number; /** * (Highcharts) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highcharts) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highcharts) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotPackedbubbleConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highcharts) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highcharts) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotPackedbubbleDataGroupingOptions; /** * (Highcharts) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: PlotPackedBubbleDataLabelsOptionsObject; /** * (Highcharts) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts) Whether to display negative sized bubbles. The threshold is * given by the zThreshold option, and negative bubbles can be visualized by * setting negativeColor. */ displayNegative?: boolean; /** * (Highcharts) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotPackedbubbleDragDropOptions; /** * (Highcharts) Flag to determine if nodes are draggable or not. Available * for graph with useSimulation set to true only. */ draggable?: boolean; /** * (Highcharts) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotPackedbubbleEventsOptions; /** * (Highcharts) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highcharts) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highcharts) Export-data module required. When set to `false` will * prevent the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotPackedbubbleLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotPackedbubbleLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotPackedbubbleLastVisiblePriceOptions; /** * (Highcharts) Options for layout algorithm when simulation is enabled. * Inside there are options to change the speed, padding, initial bubbles * positions and more. */ layoutAlgorithm?: PlotPackedbubbleLayoutAlgorithmOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) The width of the line connecting the data points. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts) Options for the point markers of line-like series. * Properties like `fillColor`, `lineColor` and `lineWidth` define the * visual appearance of the markers. Other series types, like column series, * don't have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotPackedbubbleMarkerOptions; /** * (Highcharts, Highstock) Maximum bubble size. Bubbles will automatically * size between the `minSize` and `maxSize` to reflect the `z` value of each * bubble. Can be either pixels (when no unit is given), or a percentage of * the smallest one of the plot width and height, divided by the square root * of total number of points. */ maxSize?: (number|string); /** * (Highcharts, Highstock) Minimum bubble size. Bubbles will automatically * size between the `minSize` and `maxSize` to reflect the `z` value of each * bubble. Can be either pixels (when no unit is given), or a percentage of * the smallest one of the plot width and height, divided by the square root * of total number of points. */ minSize?: (number|string); /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts) When a point's Z value is below the zThreshold setting, this * color is used. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highcharts) Properties for each single point. */ point?: PlotPackedbubblePointOptions; /** * (Highcharts) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, `pointInterval` defines the interval of the x values. For * example, if a series contains one value every decade starting from year * 0, set `pointInterval` to `10`. In true `datetime` axes, the * `pointInterval` is set in milliseconds. * * It can be also be combined with `pointIntervalUnit` to draw irregular * time intervals. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointInterval?: number; /** * (Highcharts, Highstock, Gantt) On datetime series, this allows for * setting the pointInterval to irregular time units, `day`, `month` and * `year`. A day is usually the same as 24 hours, but `pointIntervalUnit` * also takes the DST crossover into consideration when dealing with local * time. Combine this option with `pointInterval` to draw weeks, quarters, 6 * months, 10 years etc. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointIntervalUnit?: OptionsPointIntervalUnitValue; /** * (Highstock) The width of each point on the x axis. For example in a * column chart with one value each day, the pointRange would be 1 day (= 24 * * 3600 * * * 1000 milliseconds). This is normally computed automatically, but this * option can be used to override the automatic value. */ pointRange?: number; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, pointStart defines on what value to start. For example, if a * series contains one yearly value starting from 1945, set pointStart to * 1945. */ pointStart?: number; /** * (Highcharts) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highcharts) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts) Whether the bubble's value should be represented by the area * or the width of the bubble. The default, `area`, corresponds best to the * human perception of the size of each bubble. */ sizeBy?: string; /** * (Highcharts) If set to `true`, the accessibility module will skip past * the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts) When this is true, the series will not cause the Y axis to * cross the zero plane (or threshold option) unless the data actually * crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; /** * (Highcharts, Highstock) Whether to stack the values of each series on top * of each other. Possible values are `undefined` to disable, `"normal"` to * stack by value or `"percent"`. When stacking is enabled, data must be * sorted in ascending X order. A special stacking option is with the * streamgraph series type, where the stacking option is set to `"stream"`. * The second one is `"overlap"`, which only applies to waterfall series. */ stacking?: OptionsStackingValue; states?: PlotPackedbubbleStatesOptions; /** * (Highcharts, Highstock) Sticky tracking of mouse events. When true, the * `mouseOut` event on a series isn't triggered until the mouse moves over * another series, or out of the plot area. When false, the `mouseOut` event * on a series is triggered when the mouse leaves the area around the * series' graph or markers. This also implies the tooltip. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highcharts, Highstock) A configuration object for the tooltip rendering * of each single series. Properties are inherited from tooltip. Overridable * properties are `headerFormat`, `pointFormat`, `yDecimals`, `xDateFormat`, * `yPrefix` and `ySuffix`. Unlike other series, in a scatter plot the * series.name by default shows in the headerFormat and point.x and point.y * in the pointFormat. */ tooltip?: PlotPackedbubbleTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highcharts) An option is giving a possibility to choose between using * simulation for calculating bubble positions. These reflects in both * animation and final position of bubbles. Simulation is also adding * options to the series graph based on used layout. In case of big data * sets, with any performance issues, it is possible to disable animation * and pack bubble in a simple circular way. */ useSimulation?: boolean; /** * (Highcharts) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotPackedbubbleZonesOptions>; /** * (Highcharts) When displayNegative is `false`, bubbles with lower Z values * are skipped. When `displayNegative` is `true` and a negativeColor is * given, points with lower Z is colored. */ zThreshold?: number; } /** * (Highcharts) Events for each single point. */ export interface PlotPackedbubblePointEventsOptions { /** * (Highcharts) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts) Callback that fires when the point is dropped. The * parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts) Fires when the point is removed using the `.remove()` * method. One parameter, `event`, is passed to the function. Returning * `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts) Fires when the point is unselected either programmatically * or following a click on the point. One parameter, `event`, is passed to * the function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) Properties for each single point. */ export interface PlotPackedbubblePointOptions { /** * (Highcharts) Events for each single point. */ events?: PlotPackedbubblePointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotPackedbubbleStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotPackedbubbleStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotPackedbubbleStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotPackedbubbleStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotPackedbubbleStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotPackedbubbleStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotPackedbubbleStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotPackedbubbleStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotPackedbubbleStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotPackedbubbleStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotPackedbubbleStatesHoverMarkerStatesHoverOptions; inactive?: PlotPackedbubbleStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotPackedbubbleStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotPackedbubbleStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotPackedbubbleStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotPackedbubbleStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotPackedbubbleStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: PlotPackedbubbleStatesHoverHaloOptions; /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotPackedbubbleStatesHoverMarkerOptions; } export interface PlotPackedbubbleStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts) The opposite state of a hover for series. */ export interface PlotPackedbubbleStatesInactiveOptions { animation?: PlotPackedbubbleStatesInactiveAnimationOptions; /** * (Highcharts) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highcharts) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotPackedbubbleStatesNormalOptions { /** * (Highcharts) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotPackedbubbleStatesOptions { /** * (Highcharts) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotPackedbubbleStatesHoverOptions; /** * (Highcharts) The opposite state of a hover for series. */ inactive?: PlotPackedbubbleStatesInactiveOptions; /** * (Highcharts) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotPackedbubbleStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotPackedbubbleStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotPackedbubbleStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotPackedbubbleStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotPackedbubbleStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotPackedbubbleStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotPackedbubbleStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotPackedbubbleStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotPackedbubbleStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotPackedbubbleStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotPackedbubbleStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotPackedbubbleStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotPackedbubbleStatesSelectMarkerStatesHoverOptions; inactive?: PlotPackedbubbleStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotPackedbubbleStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotPackedbubbleStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotPackedbubbleStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotPackedbubbleStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotPackedbubbleStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotPackedbubbleStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotPackedbubbleStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotPackedbubbleTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts, Highstock) A configuration object for the tooltip rendering of * each single series. Properties are inherited from tooltip. Overridable * properties are `headerFormat`, `pointFormat`, `yDecimals`, `xDateFormat`, * `yPrefix` and `ySuffix`. Unlike other series, in a scatter plot the * series.name by default shows in the headerFormat and point.x and point.y in * the pointFormat. */ export interface PlotPackedbubbleTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotPackedbubbleTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highcharts, Highstock) Whether the tooltip should follow the mouse as it * moves across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts, Highstock) Whether the tooltip should update as the finger * moves on a touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts, Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts, Highstock) The HTML of the tooltip header line. Variables * are enclosed by curly brackets. Available variables are `point.key`, * `series.name`, `series.color` and other members from the `point` and * `series` objects. The `point.key` variable contains the category name, x * value or datetime string depending on the type of axis. For datetime * axes, the `point.key` date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts, Highstock) The name of a symbol to use for the border around * the tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts, Highstock) The number of milliseconds to wait until the * tooltip is hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts, Highstock) The HTML of the null point's line in the tooltip. * Works analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts, Highstock) Callback function to format the text of the * tooltip for visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts, Highstock) Whether to allow the tooltip to render outside * the chart's SVG element box. By default (`false`), the tooltip is * rendered within the chart's SVG element, which results in the tooltip * being aligned inside the chart area. For small charts, this may result in * clipping or overlapping. When `true`, a separate SVG element is created * and overlaid on the page, allowing the tooltip to be aligned inside the * page itself. */ outside?: boolean; /** * (Highcharts, Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts, Highstock) The HTML of the point's line in the tooltip. * Variables are enclosed by curly brackets. Available variables are * point.x, point.y, series. name and series.color and other properties on * the same form. Furthermore, `point.y` can be extended by the * `tooltip.valuePrefix` and `tooltip.valueSuffix` variables. This can also * be overridden for each series, which makes it a good hook for displaying * units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts, Highstock) A callback function for formatting the HTML * output for a single point in the tooltip. Like the `pointFormat` string, * but with more flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts, Highstock) How many decimals to show in each series' y * value. This is overridable in each series' tooltip options object. The * default is to preserve all decimals. */ valueDecimals?: number; /** * (Highcharts, Highstock) A string to prepend to each series' y value. * Overridable in each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts, Highstock) A string to append to each series' y value. * Overridable in each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotPackedbubbleZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts) Keyboard navigation for a series */ export interface PlotParetoAccessibilityKeyboardNavigationOptions { /** * (Highcharts) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highcharts) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotParetoAccessibilityOptions { /** * (Highcharts) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highcharts) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highcharts) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotParetoAccessibilityKeyboardNavigationOptions); /** * (Highcharts) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotParetoAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotParetoConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotParetoConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotParetoConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotParetoConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotParetoConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotParetoConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotParetoConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotParetoDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts) Options for the drag handles. */ export interface PlotParetoDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface PlotParetoDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotParetoDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: PlotParetoDragDropGuideBoxDefaultOptions; } /** * (Highcharts) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotParetoDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: PlotParetoDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotParetoDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotParetoEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotParetoLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotParetoLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotParetoLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotParetoLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotParetoLastVisiblePriceLabelOptions; } /** * (Highcharts) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotParetoMarkerOptions { /** * (Highcharts) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highcharts) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highcharts) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highcharts) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts) The radius of the point marker. */ radius?: number; /** * (Highcharts) States for a single point marker. */ states?: PlotParetoMarkerStatesOptions; /** * (Highcharts) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts) Animation when hovering over the marker. */ export interface PlotParetoMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts) The hover state for a single point marker. */ export interface PlotParetoMarkerStatesHoverOptions { /** * (Highcharts) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotParetoMarkerStatesHoverAnimationOptions); /** * (Highcharts) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highcharts) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotParetoMarkerStatesInactiveOptions { /** * (Highcharts) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotParetoMarkerStatesNormalOptions { /** * (Highcharts) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts) States for a single point marker. */ export interface PlotParetoMarkerStatesOptions { /** * (Highcharts) The hover state for a single point marker. */ hover?: PlotParetoMarkerStatesHoverOptions; inactive?: PlotParetoMarkerStatesInactiveOptions; /** * (Highcharts) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotParetoMarkerStatesNormalOptions; /** * (Highcharts) The appearance of the point marker when selected. In order * to allow a point to be selected, set the `series.allowPointSelect` option * to true. */ select?: PlotParetoMarkerStatesSelectOptions; } /** * (Highcharts) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotParetoMarkerStatesSelectOptions { /** * (Highcharts) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts) A pareto diagram is a type of chart that contains both bars and * a line graph, where individual values are represented in descending order by * bars, and the cumulative total is represented by the line. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `pareto` series are defined in plotOptions.pareto. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotParetoOptions { /** * (Highcharts) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotParetoAccessibilityOptions); /** * (Highcharts) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotParetoAnimationOptions); /** * (Highcharts) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highcharts) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highcharts) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotParetoConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highcharts) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highcharts) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotParetoDataGroupingOptions; /** * (Highcharts) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotParetoDragDropOptions; /** * (Highcharts) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotParetoEventsOptions; /** * (Highcharts) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highcharts) Export-data module required. When set to `false` will * prevent the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotParetoLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotParetoLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotParetoLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts) Options for the point markers of line-like series. * Properties like `fillColor`, `lineColor` and `lineWidth` define the * visual appearance of the markers. Other series types, like column series, * don't have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotParetoMarkerOptions; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highcharts) Properties for each single point. */ point?: PlotParetoPointOptions; /** * (Highcharts) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highcharts) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts) If set to `true`, the accessibility module will skip past * the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; states?: PlotParetoStatesOptions; /** * (Highcharts) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotParetoTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) The parameter allows setting line series type and use OHLC * indicators. Data in OHLC format is required. */ useOhlcData?: boolean; /** * (Highcharts) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Higher zIndex than column series to draw line above shapes. */ zIndex?: number; } /** * (Highcharts) Events for each single point. */ export interface PlotParetoPointEventsOptions { /** * (Highcharts) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts) Callback that fires when the point is dropped. The * parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts) Fires when the point is removed using the `.remove()` * method. One parameter, `event`, is passed to the function. Returning * `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts) Fires when the point is unselected either programmatically * or following a click on the point. One parameter, `event`, is passed to * the function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) Properties for each single point. */ export interface PlotParetoPointOptions { /** * (Highcharts) Events for each single point. */ events?: PlotParetoPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotParetoStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotParetoStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotParetoStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotParetoStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotParetoStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotParetoStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotParetoStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotParetoStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotParetoStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotParetoStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotParetoStatesHoverMarkerStatesHoverOptions; inactive?: PlotParetoStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotParetoStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotParetoStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotParetoStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotParetoStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotParetoStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotParetoStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotParetoStatesHoverMarkerOptions; } export interface PlotParetoStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts) The opposite state of a hover for series. */ export interface PlotParetoStatesInactiveOptions { animation?: PlotParetoStatesInactiveAnimationOptions; /** * (Highcharts) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highcharts) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotParetoStatesNormalOptions { /** * (Highcharts) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotParetoStatesOptions { /** * (Highcharts) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotParetoStatesHoverOptions; /** * (Highcharts) The opposite state of a hover for series. */ inactive?: PlotParetoStatesInactiveOptions; /** * (Highcharts) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotParetoStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotParetoStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotParetoStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotParetoStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotParetoStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotParetoStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotParetoStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotParetoStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotParetoStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotParetoStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotParetoStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotParetoStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotParetoStatesSelectMarkerStatesHoverOptions; inactive?: PlotParetoStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotParetoStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotParetoStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotParetoStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotParetoStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotParetoStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotParetoStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotParetoStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotParetoTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotParetoTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotParetoTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highcharts) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts) The name of a symbol to use for the border around the * tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highcharts) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts) How many decimals to show in each series' y value. This is * overridable in each series' tooltip options object. The default is to * preserve all decimals. */ valueDecimals?: number; /** * (Highcharts) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotPcAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotPcAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotPcAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotPcAnimationOptions { duration?: number; } export interface PlotPcBottomLineOptions { styles?: PlotPcBottomLineStylesOptions; } export interface PlotPcBottomLineStylesOptions { /** * (Highstock) Color of the bottom line. If not set, it's inherited from * plotOptions.pc.color. */ lineColor?: ColorString; /** * (Highstock) Pixel width of the line. */ lineWidth?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotPcConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotPcConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotPcConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotPcConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotPcConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotPcConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotPcConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotPcDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: string; /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotPcDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotPcDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotPcDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotPcDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotPcDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotPcDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotPcDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotPcEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotPcLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotPcLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotPcLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotPcLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotPcLastVisiblePriceLabelOptions; } /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotPcMarkerOptions { /** * (Highstock) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highstock) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highstock) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. */ radius?: number; /** * (Highstock) States for a single point marker. */ states?: PlotPcMarkerStatesOptions; /** * (Highstock) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highstock) Animation when hovering over the marker. */ export interface PlotPcMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highstock) The hover state for a single point marker. */ export interface PlotPcMarkerStatesHoverOptions { /** * (Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotPcMarkerStatesHoverAnimationOptions); /** * (Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highstock) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotPcMarkerStatesInactiveOptions { /** * (Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highstock) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotPcMarkerStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highstock) States for a single point marker. */ export interface PlotPcMarkerStatesOptions { /** * (Highstock) The hover state for a single point marker. */ hover?: PlotPcMarkerStatesHoverOptions; inactive?: PlotPcMarkerStatesInactiveOptions; /** * (Highstock) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotPcMarkerStatesNormalOptions; /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotPcMarkerStatesSelectOptions; } /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotPcMarkerStatesSelectOptions { /** * (Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Price channel (PC). This series requires the `linkedTo` option to * be set and should be loaded after the `stock/indicators/indicators.js`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `pc` series are defined in plotOptions.pc. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotPcOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotPcAccessibilityOptions); /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotPcAnimationOptions); /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; bottomLine?: PlotPcBottomLineOptions; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highstock) Whether to compare indicator to the main series values or * indicator values. */ compareToMain?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotPcConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotPcDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotPcDragDropOptions; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotPcEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotPcLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotPcLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotPcLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The main series ID that indicator will be * based on. Required for this indicator. */ linkedTo?: string; /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotPcMarkerOptions; /** * (Highstock) The name of the series as shown in the legend, tooltip etc. * If not set, it will be based on a technical indicator type and default * params. */ name?: string; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Paramters used in calculation of regression series' points. */ params?: PlotPcParamsOptions; /** * (Highstock) Properties for each single point. */ point?: PlotPcPointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotPcStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotPcTooltipOptions; topLine?: PlotPcTopLineOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotPcZonesOptions>; } /** * (Highstock) Paramters used in calculation of regression series' points. */ export interface PlotPcParamsOptions { /** * (Highstock) The base period for indicator calculations. This is the * number of data points which are taken into account for the indicator * calculations. */ period?: number; } /** * (Highstock) Events for each single point. */ export interface PlotPcPointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotPcPointOptions { /** * (Highstock) Events for each single point. */ events?: PlotPcPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotPcStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotPcStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotPcStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotPcStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotPcStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotPcStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotPcStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotPcStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotPcStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotPcStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotPcStatesHoverMarkerStatesHoverOptions; inactive?: PlotPcStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotPcStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotPcStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotPcStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotPcStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotPcStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotPcStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotPcStatesHoverMarkerOptions; } export interface PlotPcStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotPcStatesInactiveOptions { animation?: PlotPcStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotPcStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotPcStatesOptions { /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotPcStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotPcStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotPcStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotPcStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotPcStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotPcStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotPcStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotPcStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotPcStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotPcStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotPcStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotPcStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotPcStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotPcStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotPcStatesSelectMarkerStatesHoverOptions; inactive?: PlotPcStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotPcStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotPcStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotPcStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotPcStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotPcStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotPcStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotPcStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotPcTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotPcTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotPcTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) Number of decimals in indicator series. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } export interface PlotPcTopLineOptions { styles?: PlotPcTopLineStylesOptions; } export interface PlotPcTopLineStylesOptions { /** * (Highstock) Color of the top line. If not set, it's inherited from * plotOptions.pc.color. */ lineColor?: ColorString; /** * (Highstock) Pixel width of the line. */ lineWidth?: number; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotPcZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts) Keyboard navigation for a series */ export interface PlotPieAccessibilityKeyboardNavigationOptions { /** * (Highcharts) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highcharts) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotPieAccessibilityOptions { /** * (Highcharts) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highcharts) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highcharts) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotPieAccessibilityKeyboardNavigationOptions); /** * (Highcharts) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotPieAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotPieConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotPieConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotPieConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotPieConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotPieConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotPieConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotPieConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotPieDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * Options for the series data labels, appearing next to each data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names. */ export interface PlotPieDataLabelsOptionsObject extends DataLabelsOptionsObject { /** * (Highcharts) Alignment method for data labels. Possible values are: * * - `toPlotEdges`: each label touches the nearest vertical edge of the plot * area * * - `connectors`: connectors have the same x position and the widest label * of each half (left & right) touches the nearest vertical edge of the plot * area. */ alignTo?: string; /** * (Highcharts) The color of the line connecting the data label to the pie * slice. The default color is the same as the point's color. * * In styled mode, the connector stroke is given in the * `.highcharts-data-label-connector` class. */ connectorColor?: ColorString; /** * (Highcharts) The distance from the data label to the connector. Note that * data labels also have a default `padding`, so in order for the connector * to touch the text, the `padding` must also be 0. */ connectorPadding?: number; /** * (Highcharts) Specifies the method that is used to generate the connector * path. Highcharts provides 3 built-in connector shapes: `'fixedOffset'` * (default), `'straight'` and `'crookedLine'`. Using `'crookedLine'` has * the most sense (in most of the cases) when `'alignTo'` is set. * * Users can provide their own method by passing a function instead of a * String. 3 arguments are passed to the callback: * * - Object that holds the information about the coordinates of the label * (`x` & `y` properties) and how the label is located in relation to the * pie (`alignment` property). `alignment` can by one of the following: * `'left'` (pie on the left side of the data label), `'right'` (pie on the * right side of the data label) or `'center'` (data label overlaps the * pie). * * - Object that holds the information about the position of the connector. * Its `touchingSliceAt` porperty tells the position of the place where the * connector touches the slice. * * - Data label options * * The function has to return an SVG path definition in array form (see the * example). */ connectorShape?: (string|Function); /** * (Highcharts) The width of the line connecting the data label to the pie * slice. * * In styled mode, the connector stroke width is given in the * `.highcharts-data-label-connector` class. */ connectorWidth?: number; /** * (Highcharts) Works only if `connectorShape` is `'crookedLine'`. It * defines how far from the vertical plot edge the coonnector path should be * crooked. */ crookDistance?: string; /** * (Highcharts) The distance of the data label from the pie's edge. Negative * numbers put the data label on top of the pie slices. Connectors are only * shown for data labels outside the pie. */ distance?: number; /** * (Highcharts) Whether to render the connector as a soft arc or a line with * sharp break. Works only if `connectorShape` equals to `fixedOffset`. */ softConnector?: number; } /** * (Highcharts) Options for the drag handles. */ export interface PlotPieDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface PlotPieDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotPieDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: PlotPieDragDropGuideBoxDefaultOptions; } /** * (Highcharts) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotPieDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: PlotPieDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotPieDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotPieEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts) Fires when the checkbox next to the point name in the legend * is clicked. One parameter, event, is passed to the function. The state of * the checkbox is found by event.checked. The checked item is found by * event.item. Return false to prevent the default action which is to toggle * the select state of the series. */ checkboxClick?: Function; /** * (Highcharts) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotPieLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotPieLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotPieLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotPieLastVisiblePriceLabelOptions; } /** * (Highcharts) A pie chart is a circular graphic which is divided into slices * to illustrate numerical proportion. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `pie` series are defined in plotOptions.pie. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotPieOptions { /** * (Highcharts) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotPieAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highcharts) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotPieAnimationOptions); /** * (Highcharts) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts) The color of the border surrounding each slice. When `null`, * the border takes the same color as the slice fill. This can be used * together with a `borderWidth` to fill drawing gaps created by * antialiazing artefacts in borderless pies. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highcharts) The width of the border surrounding each slice. * * When setting the border width to 0, there may be small gaps between the * slices due to SVG antialiasing artefacts. To work around this, keep the * border width at 0.5 or 1, but set the `borderColor` to `null` instead. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highcharts) The center of the pie chart relative to the plot area. Can * be percentages or pixel values. The default behaviour (as of 3.0) is to * center the pie so that all slices and data labels are within the plot * area. As a consequence, the pie may actually jump around in a chart with * dynamic values, as the data labels move. In that case, the center should * be explicitly set, for example to `["50%", "50%"]`. */ center?: Array<(number|string|null)>; /** * (Highcharts) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highcharts) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highcharts) A series specific or series type specific color set to use * instead of the global colors. */ colors?: Array<(ColorString|GradientColorObject|PatternObject)>; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotPieConnectorsOptions; /** * (Highcharts) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotPieDataGroupingOptions; /** * (Highcharts) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: (DataLabelsOptionsObject|PlotPieDataLabelsOptionsObject); /** * (Highcharts) The thickness of a 3D pie. Requires `highcharts-3d.js` */ depth?: number; /** * (Highcharts) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotPieDragDropOptions; /** * (Highcharts) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts) The end angle of the pie in degrees where 0 is top and 90 is * right. Defaults to `startAngle` plus 360. */ endAngle?: number; /** * (Highcharts) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotPieEventsOptions; /** * (Highcharts) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts) Equivalent to chart.ignoreHiddenSeries, this option tells * whether the series shall be redrawn as if the hidden point were `null`. * * The default value changed from `false` to `true` with Highcharts 3.0. */ ignoreHiddenPoint?: boolean; /** * (Highcharts) Export-data module required. When set to `false` will * prevent the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts) The size of the inner diameter for the pie. A size greater * than 0 renders a donut chart. Can be a percentage or pixel value. * Percentages are relative to the pie size. Pixel values are given as * integers. * * Note: in Highcharts < 4.1.2, the percentage was relative to the plot * area, not the pie size. */ innerSize?: (number|string); /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts) An array specifying which option maps to which key in the * data point array. This makes it convenient to work with unstructured data * arrays from different sources. */ keys?: Array<string>; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotPieLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotPieLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts) The minimum size for a pie in response to auto margins. The * pie will try to shrink to make room for data labels in side the plot * area, but only to this size. */ minSize?: number; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highcharts) Properties for each single point. */ point?: PlotPiePointOptions; /** * (Highcharts) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) The width of each point on the x axis. For example in a * column chart with one value each day, the pointRange would be 1 day (= 24 * * 3600 * * * 1000 milliseconds). This is normally computed automatically, but this * option can be used to override the automatic value. */ pointRange?: number; /** * (Highcharts) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highcharts) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highcharts) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts) Whether to display this particular series or series type in * the legend. Since 2.1, pies are not shown in the legend by default. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts) The diameter of the pie relative to the plot area. Can be a * percentage or pixel value. Pixel values are given as integers. The * default behaviour (as of 3.0) is to scale to the plot area and give room * for data labels within the plot area. slicedOffset is also included in * the default size calculation. As a consequence, the size of the pie may * vary when points are updated and data labels more around. In that case it * is best to set a fixed value, for example `"75%"`. */ size?: (number|string|null); /** * (Highcharts) If set to `true`, the accessibility module will skip past * the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts) If a point is sliced, moved out from the center, how many * pixels should it be moved?. */ slicedOffset?: number; /** * (Highcharts) The start angle of the pie slices in degrees where 0 is top * and 90 right. */ startAngle?: number; states?: PlotPieStatesOptions; /** * (Highcharts) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip. When `stickyTracking` is * false and `tooltip.shared` is false, the tooltip will be hidden when * moving the mouse between series. */ stickyTracking?: boolean; /** * (Highcharts) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotPieTooltipOptions; /** * (Highstock) The parameter allows setting line series type and use OHLC * indicators. Data in OHLC format is required. */ useOhlcData?: boolean; /** * (Highcharts) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; } /** * (Highcharts) Events for each single point. */ export interface PlotPiePointEventsOptions { /** * (Highcharts) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts) Callback that fires when the point is dropped. The * parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts) Fires when the legend item belonging to the pie point * (slice) is clicked. The `this` keyword refers to the point itself. One * parameter, `event`, is passed to the function, containing common event * information. The default action is to toggle the visibility of the point. * This can be prevented by calling `event.preventDefault()`. */ legendItemClick?: PointLegendItemClickCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts) Fires when the point is removed using the `.remove()` * method. One parameter, `event`, is passed to the function. Returning * `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts) Fires when the point is unselected either programmatically * or following a click on the point. One parameter, `event`, is passed to * the function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) Properties for each single point. */ export interface PlotPiePointOptions { /** * (Highcharts) Events for each single point. */ events?: PlotPiePointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotPieStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotPieStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotPieStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotPieStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts) How much to brighten the point on interaction. Requires the * main color to be defined in hex or rgb(a) format. * * In styled mode, the hover brightness is by default replaced by a * fill-opacity given in the `.highcharts-point-hover` class. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotPieStatesHoverHaloOptions|null); } export interface PlotPieStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts) The opposite state of a hover for series. */ export interface PlotPieStatesInactiveOptions { animation?: PlotPieStatesInactiveAnimationOptions; /** * (Highcharts) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highcharts) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotPieStatesNormalOptions { /** * (Highcharts) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotPieStatesOptions { /** * (Highcharts) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotPieStatesHoverOptions; /** * (Highcharts) The opposite state of a hover for series. */ inactive?: PlotPieStatesInactiveOptions; /** * (Highcharts) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotPieStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotPieStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotPieStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotPieStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotPieStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotPieStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotPieStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotPieStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotPieStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotPieStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotPieStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotPieStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotPieStatesSelectMarkerStatesHoverOptions; inactive?: PlotPieStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotPieStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotPieStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotPieStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotPieStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotPieStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotPieStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotPieStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotPieTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotPieTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotPieTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highcharts) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts) The name of a symbol to use for the border around the * tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highcharts) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts) How many decimals to show in each series' y value. This is * overridable in each series' tooltip options object. The default is to * preserve all decimals. */ valueDecimals?: number; /** * (Highcharts) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotPivotpointsAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotPivotpointsAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotPivotpointsAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotPivotpointsAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotPivotpointsConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotPivotpointsConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotPivotpointsConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotPivotpointsConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotPivotpointsConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotPivotpointsConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotPivotpointsConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotPivotpointsDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: string; /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotPivotpointsDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotPivotpointsDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotPivotpointsDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotPivotpointsDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotPivotpointsDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotPivotpointsDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotPivotpointsDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotPivotpointsEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotPivotpointsLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotPivotpointsLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotPivotpointsLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotPivotpointsLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotPivotpointsLastVisiblePriceLabelOptions; } /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotPivotpointsMarkerOptions { /** * (Highstock) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highstock) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highstock) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. */ radius?: number; /** * (Highstock) States for a single point marker. */ states?: PlotPivotpointsMarkerStatesOptions; /** * (Highstock) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highstock) Animation when hovering over the marker. */ export interface PlotPivotpointsMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highstock) The hover state for a single point marker. */ export interface PlotPivotpointsMarkerStatesHoverOptions { /** * (Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotPivotpointsMarkerStatesHoverAnimationOptions); /** * (Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highstock) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotPivotpointsMarkerStatesInactiveOptions { /** * (Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highstock) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotPivotpointsMarkerStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highstock) States for a single point marker. */ export interface PlotPivotpointsMarkerStatesOptions { /** * (Highstock) The hover state for a single point marker. */ hover?: PlotPivotpointsMarkerStatesHoverOptions; inactive?: PlotPivotpointsMarkerStatesInactiveOptions; /** * (Highstock) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotPivotpointsMarkerStatesNormalOptions; /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotPivotpointsMarkerStatesSelectOptions; } /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotPivotpointsMarkerStatesSelectOptions { /** * (Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Pivot points indicator. This series requires the `linkedTo` * option to be set and should be loaded after `stock/indicators/indicators.js` * file. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `pivotpoints` series are defined in * plotOptions.pivotpoints. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotPivotpointsOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotPivotpointsAccessibilityOptions); /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotPivotpointsAnimationOptions); /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highstock) Whether to compare indicator to the main series values or * indicator values. */ compareToMain?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotPivotpointsConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotPivotpointsDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotPivotpointsDragDropOptions; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotPivotpointsEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotPivotpointsLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotPivotpointsLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotPivotpointsLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The main series ID that indicator will be * based on. Required for this indicator. */ linkedTo?: string; /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotPivotpointsMarkerOptions; /** * (Highstock) The name of the series as shown in the legend, tooltip etc. * If not set, it will be based on a technical indicator type and default * params. */ name?: string; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Paramters used in calculation of regression series' points. */ params?: PlotPivotpointsParamsOptions; /** * (Highstock) Properties for each single point. */ point?: PlotPivotpointsPointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotPivotpointsStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotPivotpointsTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotPivotpointsZonesOptions>; } /** * (Highstock) Paramters used in calculation of regression series' points. */ export interface PlotPivotpointsParamsOptions { /** * (Highstock) Algorithm used to calculate ressistance and support lines * based on pivot points. Implemented algorithms: `'standard'`, * `'fibonacci'` and `'camarilla'` */ algorithm?: string; /** * (Highstock) The base period for indicator calculations. This is the * number of data points which are taken into account for the indicator * calculations. */ period?: number; } /** * (Highstock) Events for each single point. */ export interface PlotPivotpointsPointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotPivotpointsPointOptions { /** * (Highstock) Events for each single point. */ events?: PlotPivotpointsPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotPivotpointsStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotPivotpointsStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotPivotpointsStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotPivotpointsStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotPivotpointsStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotPivotpointsStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotPivotpointsStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotPivotpointsStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotPivotpointsStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotPivotpointsStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotPivotpointsStatesHoverMarkerStatesHoverOptions; inactive?: PlotPivotpointsStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotPivotpointsStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotPivotpointsStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotPivotpointsStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotPivotpointsStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotPivotpointsStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotPivotpointsStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotPivotpointsStatesHoverMarkerOptions; } export interface PlotPivotpointsStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotPivotpointsStatesInactiveOptions { animation?: PlotPivotpointsStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotPivotpointsStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotPivotpointsStatesOptions { /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotPivotpointsStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotPivotpointsStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotPivotpointsStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotPivotpointsStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotPivotpointsStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotPivotpointsStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotPivotpointsStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotPivotpointsStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotPivotpointsStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotPivotpointsStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotPivotpointsStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotPivotpointsStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotPivotpointsStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotPivotpointsStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotPivotpointsStatesSelectMarkerStatesHoverOptions; inactive?: PlotPivotpointsStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotPivotpointsStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotPivotpointsStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotPivotpointsStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotPivotpointsStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotPivotpointsStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotPivotpointsStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotPivotpointsStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotPivotpointsTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotPivotpointsTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotPivotpointsTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) Number of decimals in indicator series. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotPivotpointsZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts, Highstock) Keyboard navigation for a series */ export interface PlotPolygonAccessibilityKeyboardNavigationOptions { /** * (Highcharts, Highstock) Enable/disable keyboard navigation support for a * specific series. */ enabled?: boolean; } /** * (Highcharts, Highstock) Accessibility options for a series. Requires the * accessibility module. */ export interface PlotPolygonAccessibilityOptions { /** * (Highcharts, Highstock) Provide a description of the series, announced to * screen readers. */ description?: string; /** * (Highcharts, Highstock) Enable/disable accessibility functionality for a * specific series. */ enabled?: boolean; /** * (Highcharts, Highstock) Expose only the series element to screen readers, * not its points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts, Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotPolygonAccessibilityKeyboardNavigationOptions); /** * (Highcharts, Highstock) Formatter function to use instead of the default * for point descriptions. Same as * `accessibility.pointDescriptionFormatter`, but for a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts, Highstock) Enable or disable the initial animation when a series * is displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotPolygonAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotPolygonConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotPolygonConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotPolygonConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotPolygonConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotPolygonConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotPolygonConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotPolygonConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotPolygonDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts, Highstock) Options for the drag handles. */ export interface PlotPolygonDragDropDragHandleOptions { /** * (Highcharts, Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts, Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The mouse cursor to use for the drag handles. By * default this is intelligently switching between `ew-resize` and * `ns-resize` depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts, Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts, Highstock) Function to define the SVG path to use for the * drag handles. Takes the point as argument. Should return an SVG path in * array format. The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts, Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box default state. */ export interface PlotPolygonDragDropGuideBoxDefaultOptions { /** * (Highcharts, Highstock) CSS class name of the guide box in this state. * Defaults to `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts, Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Guide box cursor. */ cursor?: string; /** * (Highcharts, Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts, Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts, Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box. The guide box has * one state by default, the `default` state. */ export interface PlotPolygonDragDropGuideBoxOptions { /** * (Highcharts, Highstock) Style options for the guide box default state. */ default?: PlotPolygonDragDropGuideBoxDefaultOptions; } /** * (Highcharts, Highstock) The draggable-points module allows points to be moved * around or modified in the chart. In addition to the options mentioned under * the `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotPolygonDragDropOptions { /** * (Highcharts, Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts, Highstock) Enable dragging in the Y dimension. Note that * this is not supported for TreeGrid axes (the default axis type in Gantt * charts). */ draggableY?: boolean; /** * (Highcharts, Highstock) Options for the drag handles. */ dragHandle?: PlotPolygonDragDropDragHandleOptions; /** * (Highcharts, Highstock) Set the maximum X value the points can be moved * to. */ dragMaxX?: number; /** * (Highcharts, Highstock) Set the maximum Y value the points can be moved * to. */ dragMaxY?: number; /** * (Highcharts, Highstock) Set the minimum X value the points can be moved * to. */ dragMinX?: number; /** * (Highcharts, Highstock) Set the minimum Y value the points can be moved * to. */ dragMinY?: number; /** * (Highcharts, Highstock) The X precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionX?: number; /** * (Highcharts, Highstock) The Y precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionY?: number; /** * (Highcharts, Highstock) The amount of pixels to drag the pointer before * it counts as a drag operation. This prevents drag/drop to fire when just * clicking or selecting points. */ dragSensitivity?: number; /** * (Highcharts, Highstock) Group the points by a property. Points with the * same property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts, Highstock) Style options for the guide box. The guide box * has one state by default, the `default` state. */ guideBox?: (PlotPolygonDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts, Highstock) Update points as they are dragged. If false, a * guide box is drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock) General event handlers for the series items. These * event hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotPolygonEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts, Highstock) Fires when the checkbox next to the series' name * in the legend is clicked. One parameter, `event`, is passed to the * function. The state of the checkbox is found by `event.checked`. The * checked item is found by `event.item`. Return `false` to prevent the * default action which is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is clicked. One parameter, * `event`, is passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is hidden after chart * generation time, either by clicking the legend item or by calling * `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts, Highstock) Fires when the legend item belonging to the * series is clicked. One parameter, `event`, is passed to the function. The * default action is to toggle the visibility of the series. This can be * prevented by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse leaves the graph. One * parameter, `event`, is passed to the function, containing common event * information. If the stickyTracking option is true, `mouseOut` doesn't * happen before the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse enters the graph. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is shown after chart * generation time, either by clicking the legend item or by calling * `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotPolygonLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotPolygonLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotPolygonLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotPolygonLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotPolygonLastVisiblePriceLabelOptions; } /** * (Highcharts, Highstock) Options for the point markers of line-like series. * Properties like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't have * markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotPolygonMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotPolygonMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotPolygonMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotPolygonMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotPolygonMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotPolygonMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotPolygonMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotPolygonMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotPolygonMarkerStatesHoverOptions; inactive?: PlotPolygonMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotPolygonMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotPolygonMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotPolygonMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts, Highstock) A polygon series can be used to draw any freeform * shape in the cartesian coordinate system. A fill is applied with the `color` * option, and stroke is applied through `lineWidth` and `lineColor` options. * Requires the `highcharts-more.js` file. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `polygon` series are defined in plotOptions.polygon. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotPolygonOptions { /** * (Highcharts, Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotPolygonAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highcharts, Highstock) Allow this series' points to be selected by * clicking on the graphic (columns, point markers, pie slices, map areas * etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts, Highstock) Enable or disable the initial animation when a * series is displayed. The animation can also be set as a configuration * object. Please note that this option only applies to the initial * animation of the series itself. For other animations, see chart.animation * and the animation parameter under the API methods. The following * properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotPolygonAnimationOptions); /** * (Highcharts, Highstock) For some series, there is a limit that shuts down * initial animation by default when the total number of points in the chart * is too high. For example, for a column chart and its derivatives, * animation does not run if there is more than 250 points totally. To * disable this cap, set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highcharts, Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts, Highstock) Set the point threshold for when a series should * enter boost mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highcharts, Highstock) An additional class name to apply to the series' * graphical elements. This option does not replace default class names of * the graphical element. */ className?: string; /** * (Highcharts, Highstock) Disable this option to allow series rendering in * the whole plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts, Highstock) The main color of the series. In line type series * it applies to the line and the point markers unless otherwise specified. * In bar type series it applies to the bars unless a color is specified per * point. The default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts, Highstock) Styled mode only. A specific color index to use * for the series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotPolygonConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highcharts, Highstock) You can set the cursor to "pointer" if you have * click events attached to the series, to signal to the user that the * points and lines can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highcharts, Highstock) A name for the dash style to use for the graph, * or for some series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotPolygonDataGroupingOptions; /** * (Highcharts, Highstock) Options for the series data labels, appearing * next to each data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts, Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts, Highstock) The draggable-points module allows points to be * moved around or modified in the chart. In addition to the options * mentioned under the `dragDrop` API structure, the module fires three * events, point.dragStart, point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotPolygonDragDropOptions; /** * (Highcharts, Highstock) Enable or disable the mouse tracking for a * specific series. This includes point tooltips and click events on graphs * and points. For large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts, Highstock) General event handlers for the series items. * These event hooks can also be attached to the series at run time using * the `Highcharts.addEvent` function. */ events?: PlotPolygonEventsOptions; /** * (Highcharts, Highstock) By default, series are exposed to screen readers * as regions. By enabling this option, the series element itself will be * exposed in the same way as the data points. This is useful if the series * is not used as a grouping entity in the chart, but you still want to * attach a description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highcharts, Highstock) Determines whether the series should look for the * nearest point in both dimensions or just the x-dimension when hovering * the series. Defaults to `'xy'` for scatter series and `'x'` for most * other series. If the data has duplicate x-values, it is recommended to * set this to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highcharts, Highstock) Export-data module required. When set to `false` * will prevent the series data from being included in any form of data * export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts, Highstock) An array specifying which option maps to which * key in the data point array. This makes it convenient to work with * unstructured data arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotPolygonLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotPolygonLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotPolygonLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) The width of the line connecting the data points. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts, Highstock) Options for the point markers of line-like * series. Properties like `fillColor`, `lineColor` and `lineWidth` define * the visual appearance of the markers. Other series types, like column * series, don't have markers, but have visual options on the series level * instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotPolygonMarkerOptions; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts, Highstock) The color for the parts of the graph or points * that are below the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Opacity of a series parts: line, fill (e.g. area) * and dataLabels. */ opacity?: number; /** * (Highcharts, Highstock) Properties for each single point. */ point?: PlotPolygonPointOptions; /** * (Highcharts, Highstock) Same as accessibility.pointDescriptionFormatter, * but for an individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, `pointInterval` defines the interval of the x values. For * example, if a series contains one value every decade starting from year * 0, set `pointInterval` to `10`. In true `datetime` axes, the * `pointInterval` is set in milliseconds. * * It can be also be combined with `pointIntervalUnit` to draw irregular * time intervals. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointInterval?: number; /** * (Highcharts, Highstock, Gantt) On datetime series, this allows for * setting the pointInterval to irregular time units, `day`, `month` and * `year`. A day is usually the same as 24 hours, but `pointIntervalUnit` * also takes the DST crossover into consideration when dealing with local * time. Combine this option with `pointInterval` to draw weeks, quarters, 6 * months, 10 years etc. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointIntervalUnit?: OptionsPointIntervalUnitValue; /** * (Highstock) The width of each point on the x axis. For example in a * column chart with one value each day, the pointRange would be 1 day (= 24 * * 3600 * * * 1000 milliseconds). This is normally computed automatically, but this * option can be used to override the automatic value. */ pointRange?: number; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, pointStart defines on what value to start. For example, if a * series contains one yearly value starting from 1945, set pointStart to * 1945. */ pointStart?: number; /** * (Highcharts, Highstock) Whether to select the series initially. If * `showCheckbox` is true, the checkbox next to the series name in the * legend will be checked for a selected series. */ selected?: boolean; /** * (Highcharts, Highstock) If true, a checkbox is displayed next to the * legend item to allow selecting the series. The state of the checkbox is * determined by the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts, Highstock) Whether to display this particular series or * series type in the legend. The default value is `true` for standalone * series, `false` for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts, Highstock) If set to `true`, the accessibility module will * skip past the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) Whether to stack the values of each series on top * of each other. Possible values are `undefined` to disable, `"normal"` to * stack by value or `"percent"`. When stacking is enabled, data must be * sorted in ascending X order. A special stacking option is with the * streamgraph series type, where the stacking option is set to `"stream"`. * The second one is `"overlap"`, which only applies to waterfall series. */ stacking?: OptionsStackingValue; states?: PlotPolygonStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highcharts, Highstock) Sticky tracking of mouse events. When true, the * `mouseOut` event on a series isn't triggered until the mouse moves over * another series, or out of the plot area. When false, the `mouseOut` event * on a series is triggered when the mouse leaves the area around the * series' graph or markers. This also implies the tooltip. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) A configuration object for the tooltip rendering * of each single series. Properties are inherited from tooltip. Overridable * properties are `headerFormat`, `pointFormat`, `yDecimals`, `xDateFormat`, * `yPrefix` and `ySuffix`. Unlike other series, in a scatter plot the * series.name by default shows in the headerFormat and point.x and point.y * in the pointFormat. */ tooltip?: PlotPolygonTooltipOptions; trackByArea?: boolean; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highcharts, Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotPolygonZonesOptions>; } /** * (Highcharts, Highstock) Events for each single point. */ export interface PlotPolygonPointEventsOptions { /** * (Highcharts, Highstock) Fires when a point is clicked. One parameter, * `event`, is passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock) Callback that fires while dragging a point. The * mouse event is passed in as parameter. The original data can be accessed * from `e.origin`, and the new point values can be accessed from * `e.newPoints`. If there is only a single point being updated, it can be * accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock) Callback that fires when starting to drag a * point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock) Callback that fires when the point is dropped. * The parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse leaves the area close to the * point. One parameter, `event`, is passed to the function, containing * common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse enters the area close to the * point. One parameter, `event`, is passed to the function, containing * common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is updated programmatically * through the `.update()` method. One parameter, `event`, is passed to the * function. The new point options can be accessed through `event.options`. * Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts, Highstock) Properties for each single point. */ export interface PlotPolygonPointOptions { /** * (Highcharts, Highstock) Events for each single point. */ events?: PlotPolygonPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotPolygonStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotPolygonStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotPolygonStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotPolygonStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotPolygonStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotPolygonStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotPolygonStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotPolygonStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotPolygonStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotPolygonStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotPolygonStatesHoverMarkerStatesHoverOptions; inactive?: PlotPolygonStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotPolygonStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotPolygonStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotPolygonStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts, Highstock) Options for the hovered series. These settings * override the normal state options when a series is moused over or touched. */ export interface PlotPolygonStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotPolygonStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Enable separate styles for the hovered series to * visualize that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotPolygonStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotPolygonStatesHoverMarkerOptions; } export interface PlotPolygonStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The opposite state of a hover for series. */ export interface PlotPolygonStatesInactiveOptions { animation?: PlotPolygonStatesInactiveAnimationOptions; /** * (Highcharts, Highstock) Opacity of series elements (dataLabels, line, * area). */ opacity?: number; } /** * (Highcharts, Highstock) The normal state of a series, or for point items in * column, pie and similar series. Currently only used for setting animation * when returning to normal state from hover. */ export interface PlotPolygonStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotPolygonStatesOptions { /** * (Highcharts, Highstock) Options for the hovered series. These settings * override the normal state options when a series is moused over or * touched. */ hover?: PlotPolygonStatesHoverOptions; /** * (Highcharts, Highstock) The opposite state of a hover for series. */ inactive?: PlotPolygonStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a series, or for point items * in column, pie and similar series. Currently only used for setting * animation when returning to normal state from hover. */ normal?: PlotPolygonStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotPolygonStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotPolygonStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotPolygonStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotPolygonStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotPolygonStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotPolygonStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotPolygonStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotPolygonStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotPolygonStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotPolygonStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotPolygonStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotPolygonStatesSelectMarkerStatesHoverOptions; inactive?: PlotPolygonStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotPolygonStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotPolygonStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotPolygonStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotPolygonStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotPolygonStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotPolygonStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotPolygonStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotPolygonTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts, Highstock) A configuration object for the tooltip rendering of * each single series. Properties are inherited from tooltip. Overridable * properties are `headerFormat`, `pointFormat`, `yDecimals`, `xDateFormat`, * `yPrefix` and `ySuffix`. Unlike other series, in a scatter plot the * series.name by default shows in the headerFormat and point.x and point.y in * the pointFormat. */ export interface PlotPolygonTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotPolygonTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highcharts, Highstock) Whether the tooltip should follow the mouse as it * moves across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts, Highstock) Whether the tooltip should update as the finger * moves on a touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts, Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts, Highstock) The HTML of the tooltip header line. Variables * are enclosed by curly brackets. Available variables are `point.key`, * `series.name`, `series.color` and other members from the `point` and * `series` objects. The `point.key` variable contains the category name, x * value or datetime string depending on the type of axis. For datetime * axes, the `point.key` date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts, Highstock) The name of a symbol to use for the border around * the tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts, Highstock) The number of milliseconds to wait until the * tooltip is hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts, Highstock) The HTML of the null point's line in the tooltip. * Works analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts, Highstock) Callback function to format the text of the * tooltip for visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts, Highstock) Whether to allow the tooltip to render outside * the chart's SVG element box. By default (`false`), the tooltip is * rendered within the chart's SVG element, which results in the tooltip * being aligned inside the chart area. For small charts, this may result in * clipping or overlapping. When `true`, a separate SVG element is created * and overlaid on the page, allowing the tooltip to be aligned inside the * page itself. */ outside?: boolean; /** * (Highcharts, Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts, Highstock) The HTML of the point's line in the tooltip. * Variables are enclosed by curly brackets. Available variables are * point.x, point.y, series. name and series.color and other properties on * the same form. Furthermore, `point.y` can be extended by the * `tooltip.valuePrefix` and `tooltip.valueSuffix` variables. This can also * be overridden for each series, which makes it a good hook for displaying * units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts, Highstock) A callback function for formatting the HTML * output for a single point in the tooltip. Like the `pointFormat` string, * but with more flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts, Highstock) How many decimals to show in each series' y * value. This is overridable in each series' tooltip options object. The * default is to preserve all decimals. */ valueDecimals?: number; /** * (Highcharts, Highstock) A string to prepend to each series' y value. * Overridable in each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts, Highstock) A string to append to each series' y value. * Overridable in each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotPolygonZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotPpoAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotPpoAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotPpoAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotPpoAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotPpoConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotPpoConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotPpoConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotPpoConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotPpoConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotPpoConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotPpoConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotPpoDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotPpoDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotPpoDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotPpoDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotPpoDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotPpoDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotPpoDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotPpoDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotPpoEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotPpoLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotPpoLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotPpoLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotPpoLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotPpoLastVisiblePriceLabelOptions; } /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotPpoMarkerOptions { /** * (Highstock) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highstock) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highstock) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. */ radius?: number; /** * (Highstock) States for a single point marker. */ states?: PlotPpoMarkerStatesOptions; /** * (Highstock) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highstock) Animation when hovering over the marker. */ export interface PlotPpoMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highstock) The hover state for a single point marker. */ export interface PlotPpoMarkerStatesHoverOptions { /** * (Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotPpoMarkerStatesHoverAnimationOptions); /** * (Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highstock) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotPpoMarkerStatesInactiveOptions { /** * (Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highstock) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotPpoMarkerStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highstock) States for a single point marker. */ export interface PlotPpoMarkerStatesOptions { /** * (Highstock) The hover state for a single point marker. */ hover?: PlotPpoMarkerStatesHoverOptions; inactive?: PlotPpoMarkerStatesInactiveOptions; /** * (Highstock) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotPpoMarkerStatesNormalOptions; /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotPpoMarkerStatesSelectOptions; } /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotPpoMarkerStatesSelectOptions { /** * (Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Percentage Price Oscillator. This series requires the `linkedTo` * option to be set and should be loaded after the * `stock/indicators/indicators.js` and `stock/indicators/ema.js`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `ppo` series are defined in plotOptions.ppo. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotPpoOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotPpoAccessibilityOptions); /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotPpoAnimationOptions); /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highstock) Whether to compare indicator to the main series values or * indicator values. */ compareToMain?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotPpoConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotPpoDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotPpoDragDropOptions; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotPpoEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotPpoLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotPpoLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotPpoLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The main series ID that indicator will be * based on. Required for this indicator. */ linkedTo?: string; /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotPpoMarkerOptions; /** * (Highstock) The name of the series as shown in the legend, tooltip etc. * If not set, it will be based on a technical indicator type and default * params. */ name?: string; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Paramters used in calculation of Percentage Price Oscillator * series points. */ params?: PlotPpoParamsOptions; /** * (Highstock) Properties for each single point. */ point?: PlotPpoPointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotPpoStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotPpoTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotPpoZonesOptions>; } /** * (Highstock) Paramters used in calculation of Percentage Price Oscillator * series points. */ export interface PlotPpoParamsOptions { /** * (Highstock) The point index which indicator calculations will base. For * example using OHLC data, index=2 means the indicator will be calculated * using Low values. * * By default index value used to be set to 0. Since Highstock 7 by default * index is set to 3 which means that the ema indicator will be calculated * using Close values. */ index?: number; /** * (Highstock) Periods for Percentage Price Oscillator calculations. */ periods?: Array<number>; } /** * (Highstock) Events for each single point. */ export interface PlotPpoPointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotPpoPointOptions { /** * (Highstock) Events for each single point. */ events?: PlotPpoPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotPpoStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotPpoStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotPpoStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotPpoStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotPpoStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotPpoStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotPpoStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotPpoStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotPpoStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotPpoStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotPpoStatesHoverMarkerStatesHoverOptions; inactive?: PlotPpoStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotPpoStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotPpoStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotPpoStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotPpoStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotPpoStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotPpoStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotPpoStatesHoverMarkerOptions; } export interface PlotPpoStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotPpoStatesInactiveOptions { animation?: PlotPpoStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotPpoStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotPpoStatesOptions { /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotPpoStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotPpoStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotPpoStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotPpoStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotPpoStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotPpoStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotPpoStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotPpoStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotPpoStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotPpoStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotPpoStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotPpoStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotPpoStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotPpoStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotPpoStatesSelectMarkerStatesHoverOptions; inactive?: PlotPpoStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotPpoStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotPpoStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotPpoStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotPpoStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotPpoStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotPpoStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotPpoStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotPpoTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotPpoTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotPpoTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) Number of decimals in indicator series. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotPpoZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotPriceenvelopesAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotPriceenvelopesAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotPriceenvelopesAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotPriceenvelopesAnimationOptions { duration?: number; } /** * (Highstock) Bottom line options. */ export interface PlotPriceenvelopesBottomLineOptions { styles?: PlotPriceenvelopesBottomLineStylesOptions; } export interface PlotPriceenvelopesBottomLineStylesOptions { /** * (Highstock) Color of the line. If not set, it's inherited from * plotOptions.priceenvelopes.color. */ lineColor?: ColorString; /** * (Highstock) Pixel width of the line. */ lineWidth?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotPriceenvelopesConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotPriceenvelopesConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotPriceenvelopesConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotPriceenvelopesConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotPriceenvelopesConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotPriceenvelopesConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotPriceenvelopesConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotPriceenvelopesDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: string; /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotPriceenvelopesDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotPriceenvelopesDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotPriceenvelopesDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotPriceenvelopesDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotPriceenvelopesDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotPriceenvelopesDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotPriceenvelopesDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotPriceenvelopesEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotPriceenvelopesLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotPriceenvelopesLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotPriceenvelopesLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotPriceenvelopesLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotPriceenvelopesLastVisiblePriceLabelOptions; } /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotPriceenvelopesMarkerOptions { /** * (Highstock) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highstock) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highstock) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. */ radius?: number; /** * (Highstock) States for a single point marker. */ states?: PlotPriceenvelopesMarkerStatesOptions; /** * (Highstock) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highstock) Animation when hovering over the marker. */ export interface PlotPriceenvelopesMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highstock) The hover state for a single point marker. */ export interface PlotPriceenvelopesMarkerStatesHoverOptions { /** * (Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotPriceenvelopesMarkerStatesHoverAnimationOptions); /** * (Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highstock) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotPriceenvelopesMarkerStatesInactiveOptions { /** * (Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highstock) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotPriceenvelopesMarkerStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highstock) States for a single point marker. */ export interface PlotPriceenvelopesMarkerStatesOptions { /** * (Highstock) The hover state for a single point marker. */ hover?: PlotPriceenvelopesMarkerStatesHoverOptions; inactive?: PlotPriceenvelopesMarkerStatesInactiveOptions; /** * (Highstock) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotPriceenvelopesMarkerStatesNormalOptions; /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotPriceenvelopesMarkerStatesSelectOptions; } /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotPriceenvelopesMarkerStatesSelectOptions { /** * (Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Price envelopes indicator based on SMA calculations. This series * requires the `linkedTo` option to be set and should be loaded after the * `stock/indicators/indicators.js` file. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `priceenvelopes` series are defined in * plotOptions.priceenvelopes. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotPriceenvelopesOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotPriceenvelopesAccessibilityOptions); /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotPriceenvelopesAnimationOptions); /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highstock) Bottom line options. */ bottomLine?: PlotPriceenvelopesBottomLineOptions; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highstock) Whether to compare indicator to the main series values or * indicator values. */ compareToMain?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotPriceenvelopesConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotPriceenvelopesDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotPriceenvelopesDragDropOptions; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotPriceenvelopesEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotPriceenvelopesLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotPriceenvelopesLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotPriceenvelopesLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The main series ID that indicator will be * based on. Required for this indicator. */ linkedTo?: string; /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotPriceenvelopesMarkerOptions; /** * (Highstock) The name of the series as shown in the legend, tooltip etc. * If not set, it will be based on a technical indicator type and default * params. */ name?: string; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Paramters used in calculation of regression series' points. */ params?: PlotPriceenvelopesParamsOptions; /** * (Highstock) Properties for each single point. */ point?: PlotPriceenvelopesPointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotPriceenvelopesStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotPriceenvelopesTooltipOptions; /** * (Highstock) Top line options. */ topLine?: PlotPriceenvelopesTopLineOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotPriceenvelopesZonesOptions>; } /** * (Highstock) Paramters used in calculation of regression series' points. */ export interface PlotPriceenvelopesParamsOptions { /** * (Highstock) Percentage below the moving average that should be displayed. * 0.1 means 90%. Relative to the calculated value. */ bottomBand?: number; /** * (Highstock) The point index which indicator calculations will base. For * example using OHLC data, index=2 means the indicator will be calculated * using Low values. */ index?: number; /** * (Highstock) The base period for indicator calculations. This is the * number of data points which are taken into account for the indicator * calculations. */ period?: number; /** * (Highstock) Percentage above the moving average that should be displayed. * 0.1 means 110%. Relative to the calculated value. */ topBand?: number; } /** * (Highstock) Events for each single point. */ export interface PlotPriceenvelopesPointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotPriceenvelopesPointOptions { /** * (Highstock) Events for each single point. */ events?: PlotPriceenvelopesPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotPriceenvelopesStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotPriceenvelopesStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotPriceenvelopesStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotPriceenvelopesStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotPriceenvelopesStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotPriceenvelopesStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotPriceenvelopesStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotPriceenvelopesStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotPriceenvelopesStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotPriceenvelopesStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotPriceenvelopesStatesHoverMarkerStatesHoverOptions; inactive?: PlotPriceenvelopesStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotPriceenvelopesStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotPriceenvelopesStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotPriceenvelopesStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotPriceenvelopesStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotPriceenvelopesStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotPriceenvelopesStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotPriceenvelopesStatesHoverMarkerOptions; } export interface PlotPriceenvelopesStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotPriceenvelopesStatesInactiveOptions { animation?: PlotPriceenvelopesStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotPriceenvelopesStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotPriceenvelopesStatesOptions { /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotPriceenvelopesStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotPriceenvelopesStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotPriceenvelopesStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotPriceenvelopesStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotPriceenvelopesStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotPriceenvelopesStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotPriceenvelopesStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotPriceenvelopesStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotPriceenvelopesStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotPriceenvelopesStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotPriceenvelopesStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotPriceenvelopesStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotPriceenvelopesStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotPriceenvelopesStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotPriceenvelopesStatesSelectMarkerStatesHoverOptions; inactive?: PlotPriceenvelopesStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotPriceenvelopesStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotPriceenvelopesStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotPriceenvelopesStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotPriceenvelopesStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotPriceenvelopesStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotPriceenvelopesStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotPriceenvelopesStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotPriceenvelopesTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotPriceenvelopesTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotPriceenvelopesTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) Number of decimals in indicator series. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highstock) Top line options. */ export interface PlotPriceenvelopesTopLineOptions { styles?: PlotPriceenvelopesTopLineStylesOptions; } export interface PlotPriceenvelopesTopLineStylesOptions { /** * (Highstock) Color of the line. If not set, it's inherited from * plotOptions.priceenvelopes.color. */ lineColor?: ColorString; /** * (Highstock) Pixel width of the line. */ lineWidth?: number; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotPriceenvelopesZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotPsarAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotPsarAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotPsarAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotPsarAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotPsarConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotPsarConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotPsarConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotPsarConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotPsarConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotPsarConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotPsarConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotPsarDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotPsarDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotPsarDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotPsarDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotPsarDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotPsarDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotPsarDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotPsarDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotPsarEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotPsarLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotPsarLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotPsarLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotPsarLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotPsarLastVisiblePriceLabelOptions; } /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotPsarMarkerOptions { /** * (Highstock) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highstock) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highstock) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. */ radius?: number; /** * (Highstock) States for a single point marker. */ states?: PlotPsarMarkerStatesOptions; /** * (Highstock) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highstock) Animation when hovering over the marker. */ export interface PlotPsarMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highstock) The hover state for a single point marker. */ export interface PlotPsarMarkerStatesHoverOptions { /** * (Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotPsarMarkerStatesHoverAnimationOptions); /** * (Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highstock) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotPsarMarkerStatesInactiveOptions { /** * (Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highstock) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotPsarMarkerStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highstock) States for a single point marker. */ export interface PlotPsarMarkerStatesOptions { /** * (Highstock) The hover state for a single point marker. */ hover?: PlotPsarMarkerStatesHoverOptions; inactive?: PlotPsarMarkerStatesInactiveOptions; /** * (Highstock) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotPsarMarkerStatesNormalOptions; /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotPsarMarkerStatesSelectOptions; } /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotPsarMarkerStatesSelectOptions { /** * (Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Parabolic SAR. This series requires `linkedTo` option to be set * and should be loaded after `stock/indicators/indicators.js` file. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `psar` series are defined in plotOptions.psar. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotPsarOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotPsarAccessibilityOptions); /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotPsarAnimationOptions); /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highstock) Whether to compare indicator to the main series values or * indicator values. */ compareToMain?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotPsarConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotPsarDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotPsarDragDropOptions; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotPsarEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotPsarLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotPsarLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotPsarLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The main series ID that indicator will be * based on. Required for this indicator. */ linkedTo?: string; /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotPsarMarkerOptions; /** * (Highstock) The name of the series as shown in the legend, tooltip etc. * If not set, it will be based on a technical indicator type and default * params. */ name?: string; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Paramters used in calculation of regression series' points. */ params?: PlotPsarParamsOptions; /** * (Highstock) Properties for each single point. */ point?: PlotPsarPointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotPsarStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotPsarTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotPsarZonesOptions>; } /** * (Highstock) Paramters used in calculation of regression series' points. */ export interface PlotPsarParamsOptions { /** * (Highstock) Number of maximum decimals that are used in PSAR * calculations. */ decimals?: number; /** * (Highstock) Acceleration factor increases by increment each time the * extreme point makes a new high. */ increment?: number; /** * (Highstock) Index from which PSAR is starting calculation */ index?: number; /** * (Highstock) The initial value for acceleration factor. Acceleration * factor is starting with this value and increases by specified increment * each time the extreme point makes a new high. AF can reach a maximum of * maxAccelerationFactor, no matter how long the uptrend extends. */ initialAccelerationFactor?: number; /** * (Highstock) The Maximum value for acceleration factor. AF can reach a * maximum of maxAccelerationFactor, no matter how long the uptrend extends. */ maxAccelerationFactor?: number; } /** * (Highstock) Events for each single point. */ export interface PlotPsarPointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotPsarPointOptions { /** * (Highstock) Events for each single point. */ events?: PlotPsarPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotPsarStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotPsarStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotPsarStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotPsarStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotPsarStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotPsarStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotPsarStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotPsarStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotPsarStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotPsarStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotPsarStatesHoverMarkerStatesHoverOptions; inactive?: PlotPsarStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotPsarStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotPsarStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotPsarStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotPsarStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotPsarStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotPsarStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotPsarStatesHoverMarkerOptions; } export interface PlotPsarStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotPsarStatesInactiveOptions { animation?: PlotPsarStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotPsarStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotPsarStatesOptions { /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotPsarStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotPsarStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotPsarStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotPsarStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotPsarStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotPsarStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotPsarStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotPsarStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotPsarStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotPsarStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotPsarStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotPsarStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotPsarStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotPsarStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotPsarStatesSelectMarkerStatesHoverOptions; inactive?: PlotPsarStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotPsarStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotPsarStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotPsarStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotPsarStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotPsarStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotPsarStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotPsarStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotPsarTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotPsarTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotPsarTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) Number of decimals in indicator series. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotPsarZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts) Keyboard navigation for a series */ export interface PlotPyramid3dAccessibilityKeyboardNavigationOptions { /** * (Highcharts) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highcharts) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotPyramid3dAccessibilityOptions { /** * (Highcharts) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highcharts) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highcharts) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotPyramid3dAccessibilityKeyboardNavigationOptions); /** * (Highcharts) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotPyramid3dAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotPyramid3dConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotPyramid3dConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotPyramid3dConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotPyramid3dConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotPyramid3dConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotPyramid3dConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotPyramid3dConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotPyramid3dDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. Defaults to `10`. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts) Options for the series data labels, appearing next to each data * point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names (see * example). */ export interface PlotPyramid3dDataLabelsOptions { align?: string; crop?: boolean; inside?: boolean; overflow?: string; verticalAlign?: string; } /** * (Highcharts) Options for the drag handles. */ export interface PlotPyramid3dDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface PlotPyramid3dDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotPyramid3dDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: PlotPyramid3dDragDropGuideBoxDefaultOptions; } /** * (Highcharts) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotPyramid3dDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: PlotPyramid3dDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotPyramid3dDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotPyramid3dEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotPyramid3dLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotPyramid3dLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotPyramid3dLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotPyramid3dLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotPyramid3dLastVisiblePriceLabelOptions; } /** * (Highcharts) A pyramid3d is a 3d version of pyramid series type. Pyramid * charts are a type of chart often used to visualize stages in a sales project, * where the top are the initial stages with the most clients. * * It requires that the `highcharts-3d.js`, `cylinder.js`, `funnel3d.js` and * `pyramid3d` modules are loaded. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `pyramid3d` series are defined in plotOptions.pyramid3d. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotPyramid3dOptions { /** * (Highcharts) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotPyramid3dAccessibilityOptions); /** * (Highcharts) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|PlotPyramid3dAnimationOptions); /** * (Highcharts) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highcharts) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts, Highstock, Gantt) The color of the border surrounding each * column or bar. * * In styled mode, the border stroke can be set with the `.highcharts-point` * rule. */ borderColor?: ColorString; /** * (Highcharts, Highstock, Gantt) The corner radius of the border * surrounding each column or bar. */ borderRadius?: number; /** * (Highcharts, Highstock, Gantt) The width of the border surrounding each * column or bar. Defaults to `1` when there is room for a border, but to * `0` when the columns are so dense that a border would cover the next * column. * * In styled mode, the stroke width can be set with the `.highcharts-point` * rule. */ borderWidth?: number; /** * (Highcharts) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highcharts) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) When using automatic point colors pulled * from the global colors or series-specific plotOptions.column.colors * collections, this option determines whether the chart should receive one * color per series or one color per point. * * In styled mode, the `colors` or `series.colors` arrays are not supported, * and instead this option gives the points individual color class names on * the form `highcharts-color-{n}`. */ colorByPoint?: boolean; /** * (Highcharts) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) A series specific or series type specific * color set to apply instead of the global colors when colorByPoint is * true. */ colors?: Array<(ColorString|GradientColorObject|PatternObject)>; /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotPyramid3dConnectorsOptions; /** * (Highcharts, Highstock, Gantt) When true, each column edge is rounded to * its nearest pixel in order to render sharp on screen. In some cases, when * there are a lot of densely packed columns, this leads to visible * difference in column widths or distance between columns. In these cases, * setting `crisp` to `false` may look better, even though each column is * rendered blurry. */ crisp?: boolean; /** * (Highcharts, Highstock, Gantt) When the series contains less points than * the crop threshold, all points are drawn, event if the points fall * outside the visible plot area at the current zoom. The advantage of * drawing all points (including markers and columns), is that animation is * performed on updates. On the other hand, when the series contains more * points than the crop threshold, the series data is cropped to only * contain points that fall within the plot area. The advantage of cropping * away invisible points is to increase performance on large series. */ cropThreshold?: number; /** * (Highcharts) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotPyramid3dDataGroupingOptions; /** * (Highcharts) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: PlotPyramid3dDataLabelsOptions; /** * (Highcharts) Depth of the columns in a 3D column chart. Requires * `highcharts-3d.js`. */ depth?: number; /** * (Highcharts) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotPyramid3dDragDropOptions; /** * (Highcharts) 3D columns only. The color of the edges. Similar to * `borderColor`, except it defaults to the same color as the column. */ edgeColor?: ColorString; /** * (Highcharts) 3D columns only. The width of the colored edges. */ edgeWidth?: number; /** * (Highcharts) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotPyramid3dEventsOptions; /** * (Highcharts) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highcharts) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highcharts) By deafult sides fill is set to a gradient through this * option being set to `true`. Set to `false` to get solid color for the * sides. */ gradientForSides?: boolean; /** * (Highcharts, Highstock, Gantt) Whether to group non-stacked columns or to * let them render independent of each other. Non-grouped columns will be * laid out individually and overlap each other. */ grouping?: boolean; /** * (Highcharts, Highstock, Gantt) Padding between each value groups, in x * axis units. */ groupPadding?: number; /** * (Highcharts) The spacing between columns on the Z Axis in a 3D chart. * Requires `highcharts-3d.js`. */ groupZPadding?: number; /** * (Highcharts) The height of the series. If it is a number it defines the * pixel height, if it is a percentage string it is the percentage of the * plot area height. */ height?: (number|string); /** * (Highcharts) Export-data module required. When set to `false` will * prevent the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts) An array specifying which option maps to which key in the * data point array. This makes it convenient to work with unstructured data * arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotPyramid3dLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotPyramid3dLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotPyramid3dLastVisiblePriceOptions; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts, Highstock, Gantt) The maximum allowed pixel width for a * column, translated to the height of a bar in a bar chart. This prevents * the columns from becoming too wide when there is a small number of points * in the chart. */ maxPointWidth?: number; /** * (Highcharts, Highstock, Gantt) The minimal height for a column or width * for a bar. By default, 0 values are not shown. To visualize a 0 (or close * to zero) point, set the minimal point length to a pixel value like 3\. In * stacked column charts, minPointLength might not be respected for tightly * packed values. */ minPointLength?: number; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; neckHeight?: number; neckWidth?: number; /** * (Highcharts) The color for the parts of the graph or points that are * below the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highcharts) Properties for each single point. */ point?: PlotPyramid3dPointOptions; /** * (Highcharts) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, `pointInterval` defines the interval of the x values. For * example, if a series contains one value every decade starting from year * 0, set `pointInterval` to `10`. In true `datetime` axes, the * `pointInterval` is set in milliseconds. * * It can be also be combined with `pointIntervalUnit` to draw irregular * time intervals. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointInterval?: number; /** * (Highcharts, Highstock, Gantt) On datetime series, this allows for * setting the pointInterval to irregular time units, `day`, `month` and * `year`. A day is usually the same as 24 hours, but `pointIntervalUnit` * also takes the DST crossover into consideration when dealing with local * time. Combine this option with `pointInterval` to draw weeks, quarters, 6 * months, 10 years etc. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointIntervalUnit?: OptionsPointIntervalUnitValue; /** * (Highcharts, Highstock, Gantt) Padding between each column or bar, in x * axis units. */ pointPadding?: number; /** * (Highcharts, Highstock, Gantt) Possible values: `"on"`, `"between"`, * `number`. * * In a column chart, when pointPlacement is `"on"`, the point will not * create any padding of the X axis. In a polar column chart this means that * the first column points directly north. If the pointPlacement is * `"between"`, the columns will be laid out between ticks. This is useful * for example for visualising an amount between two points in time or in a * certain sector of a polar chart. * * Since Highcharts 3.0.2, the point placement can also be numeric, where 0 * is on the axis value, -0.5 is between this value and the previous, and * 0.5 is between this value and the next. Unlike the textual options, * numeric point placement options won't affect axis padding. * * Note that pointPlacement needs a pointRange to work. For column series * this is computed, but for line-type series it needs to be set. * * For the `xrange` series type and gantt charts, if the Y axis is a * category axis, the `pointPlacement` applies to the Y axis rather than the * (typically datetime) X axis. * * Defaults to `undefined` in cartesian charts, `"between"` in polar charts. */ pointPlacement?: (number|string); /** * (Highcharts, Highstock, Gantt) The X axis range that each point is valid * for. This determines the width of the column. On a categorized axis, the * range will be 1 by default (one category unit). On linear and datetime * axes, the range will be computed as the distance between the two closest * data points. * * The default `null` means it is computed automatically, but this option * can be used to override the automatic value. */ pointRange?: (number|null); /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, pointStart defines on what value to start. For example, if a * series contains one yearly value starting from 1945, set pointStart to * 1945. */ pointStart?: number; /** * (Highcharts, Highstock, Gantt) A pixel value specifying a fixed width for * each column or bar. When `null`, the width is calculated from the * `pointPadding` and `groupPadding`. */ pointWidth?: number; /** * (Highcharts) A reversed pyramid3d is funnel3d, but the latter supports * neck related options: neckHeight and neckWidth */ reversed?: boolean; /** * (Highcharts) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highcharts) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highcharts) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts) If set to `true`, the accessibility module will skip past * the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; /** * (Highcharts, Highstock) Whether to stack the values of each series on top * of each other. Possible values are `undefined` to disable, `"normal"` to * stack by value or `"percent"`. When stacking is enabled, data must be * sorted in ascending X order. A special stacking option is with the * streamgraph series type, where the stacking option is set to `"stream"`. * The second one is `"overlap"`, which only applies to waterfall series. */ stacking?: OptionsStackingValue; states?: PlotPyramid3dStatesOptions; /** * (Highcharts) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts) The Y axis value to serve as the base for the columns, for * distinguishing between values above and below a threshold. If `null`, the * columns extend from the padding Y axis minimum. */ threshold?: number; /** * (Highcharts) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotPyramid3dTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highcharts) Set the initial visibility of the series. */ visible?: boolean; /** * (Highcharts) The max width of the series compared to the width of the * plot area, or the pixel width if it is a number. */ width?: (number|string); /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotPyramid3dZonesOptions>; } /** * (Highcharts) Events for each single point. */ export interface PlotPyramid3dPointEventsOptions { /** * (Highcharts) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts) Callback that fires when the point is dropped. The * parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts) Fires when the point is removed using the `.remove()` * method. One parameter, `event`, is passed to the function. Returning * `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts) Fires when the point is unselected either programmatically * or following a click on the point. One parameter, `event`, is passed to * the function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) Properties for each single point. */ export interface PlotPyramid3dPointOptions { /** * (Highcharts) Events for each single point. */ events?: PlotPyramid3dPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotPyramid3dStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock, Gantt) Options for the hovered point. These settings * override the normal state options when a point is moused over or touched. */ export interface PlotPyramid3dStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotPyramid3dStatesHoverAnimationOptions); /** * (Highcharts, Gantt) A specific border color for the hovered point. * Defaults to inherit the normal state border color. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) How much to brighten the point on * interaction. Requires the main color to be defined in hex or rgb(a) * format. * * In styled mode, the hover brightening is by default replaced with a * fill-opacity set in the `.highcharts-point:hover` rule. */ brightness?: number; /** * (Highcharts, Gantt) A specific color for the hovered point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) Enable separate styles for the hovered * series to visualize that the user hovers either the series itself or the * legend. */ enabled?: boolean; } export interface PlotPyramid3dStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts) The opposite state of a hover for series. */ export interface PlotPyramid3dStatesInactiveOptions { animation?: PlotPyramid3dStatesInactiveAnimationOptions; /** * (Highcharts) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highcharts) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotPyramid3dStatesNormalOptions { /** * (Highcharts) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotPyramid3dStatesOptions { /** * (Highcharts, Highstock, Gantt) Options for the hovered point. These * settings override the normal state options when a point is moused over or * touched. */ hover?: PlotPyramid3dStatesHoverOptions; /** * (Highcharts) The opposite state of a hover for series. */ inactive?: PlotPyramid3dStatesInactiveOptions; /** * (Highcharts) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotPyramid3dStatesNormalOptions; /** * (Highcharts, Highstock, Gantt) Options for the selected point. These * settings override the normal state options when a point is selected. */ select?: PlotPyramid3dStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotPyramid3dStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock, Gantt) Options for the selected point. These settings * override the normal state options when a point is selected. */ export interface PlotPyramid3dStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotPyramid3dStatesSelectAnimationOptions; /** * (Highcharts, Highstock, Gantt) A specific border color for the selected * point. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) A specific color for the selected point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) Enable separate styles for the hovered * series to visualize that the user hovers either the series itself or the * legend. */ enabled?: boolean; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotPyramid3dTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotPyramid3dTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotPyramid3dTooltipDateTimeLabelFormatsOptions|Dictionary<string>); distance?: number; /** * (Highcharts) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts) The name of a symbol to use for the border around the * tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highcharts) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts) How many decimals to show in each series' y value. This is * overridable in each series' tooltip options object. The default is to * preserve all decimals. */ valueDecimals?: number; /** * (Highcharts) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotPyramid3dZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts) Keyboard navigation for a series */ export interface PlotPyramidAccessibilityKeyboardNavigationOptions { /** * (Highcharts) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highcharts) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotPyramidAccessibilityOptions { /** * (Highcharts) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highcharts) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highcharts) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotPyramidAccessibilityKeyboardNavigationOptions); /** * (Highcharts) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts) Initial animation is by default disabled for the funnel chart. */ export interface PlotPyramidAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotPyramidConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotPyramidConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotPyramidConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotPyramidConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotPyramidConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotPyramidConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotPyramidConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotPyramidDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts) Options for the drag handles. */ export interface PlotPyramidDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface PlotPyramidDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotPyramidDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: PlotPyramidDragDropGuideBoxDefaultOptions; } /** * (Highcharts) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotPyramidDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: PlotPyramidDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotPyramidDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotPyramidEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts) Fires when the checkbox next to the point name in the legend * is clicked. One parameter, event, is passed to the function. The state of * the checkbox is found by event.checked. The checked item is found by * event.item. Return false to prevent the default action which is to toggle * the select state of the series. */ checkboxClick?: Function; /** * (Highcharts) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotPyramidLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotPyramidLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotPyramidLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotPyramidLastVisiblePriceLabelOptions; } /** * (Highcharts) A pyramid series is a special type of funnel, without neck and * reversed by default. Requires the funnel module. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `pyramid` series are defined in plotOptions.pyramid. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotPyramidOptions { /** * (Highcharts) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotPyramidAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highcharts) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts) Initial animation is by default disabled for the funnel * chart. */ animation?: (boolean|PlotPyramidAnimationOptions); /** * (Highcharts) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts) The color of the border surrounding each slice. When `null`, * the border takes the same color as the slice fill. This can be used * together with a `borderWidth` to fill drawing gaps created by * antialiazing artefacts in borderless pies. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highcharts) The width of the border surrounding each slice. * * When setting the border width to 0, there may be small gaps between the * slices due to SVG antialiasing artefacts. To work around this, keep the * border width at 0.5 or 1, but set the `borderColor` to `null` instead. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highcharts) The center of the series. By default, it is centered in the * middle of the plot area, so it fills the plot area height. */ center?: Array<(number|string)>; /** * (Highcharts) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highcharts) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highcharts) A series specific or series type specific color set to use * instead of the global colors. */ colors?: Array<(ColorString|GradientColorObject|PatternObject)>; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotPyramidConnectorsOptions; /** * (Highcharts) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotPyramidDataGroupingOptions; /** * (Highcharts) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: (DataLabelsOptionsObject|PlotPieDataLabelsOptionsObject); /** * (Highcharts) The thickness of a 3D pie. Requires `highcharts-3d.js` */ depth?: number; /** * (Highcharts) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotPyramidDragDropOptions; /** * (Highcharts) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts) The end angle of the pie in degrees where 0 is top and 90 is * right. Defaults to `startAngle` plus 360. */ endAngle?: number; /** * (Highcharts) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotPyramidEventsOptions; /** * (Highcharts) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts) The height of the funnel or pyramid. If it is a number it * defines the pixel height, if it is a percentage string it is the * percentage of the plot area height. */ height?: (number|string); /** * (Highcharts) Equivalent to chart.ignoreHiddenSeries, this option tells * whether the series shall be redrawn as if the hidden point were `null`. * * The default value changed from `false` to `true` with Highcharts 3.0. */ ignoreHiddenPoint?: boolean; /** * (Highcharts) Export-data module required. When set to `false` will * prevent the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts) The size of the inner diameter for the pie. A size greater * than 0 renders a donut chart. Can be a percentage or pixel value. * Percentages are relative to the pie size. Pixel values are given as * integers. * * Note: in Highcharts < 4.1.2, the percentage was relative to the plot * area, not the pie size. */ innerSize?: (number|string); /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts) An array specifying which option maps to which key in the * data point array. This makes it convenient to work with unstructured data * arrays from different sources. */ keys?: Array<string>; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotPyramidLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotPyramidLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts) The minimum size for a pie in response to auto margins. The * pie will try to shrink to make room for data labels in side the plot * area, but only to this size. */ minSize?: number; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts) The pyramid neck width is zero by default, as opposed to the * funnel, which shares the same layout logic. */ neckHeight?: string; /** * (Highcharts) The pyramid neck width is zero by default, as opposed to the * funnel, which shares the same layout logic. */ neckWidth?: string; /** * (Highcharts) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highcharts) Properties for each single point. */ point?: PlotPyramidPointOptions; /** * (Highcharts) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) The width of each point on the x axis. For example in a * column chart with one value each day, the pointRange would be 1 day (= 24 * * 3600 * * * 1000 milliseconds). This is normally computed automatically, but this * option can be used to override the automatic value. */ pointRange?: number; /** * (Highcharts) The pyramid is reversed by default, as opposed to the * funnel, which shares the layout engine, and is not reversed. */ reversed?: boolean; /** * (Highcharts) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highcharts) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highcharts) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts) Whether to display this particular series or series type in * the legend. Since 2.1, pies are not shown in the legend by default. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts) If set to `true`, the accessibility module will skip past * the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts) If a point is sliced, moved out from the center, how many * pixels should it be moved?. */ slicedOffset?: number; /** * (Highcharts) The start angle of the pie slices in degrees where 0 is top * and 90 right. */ startAngle?: number; /** * (Highcharts) Options for the series states. */ states?: PlotPyramidStatesOptions; /** * (Highcharts) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip. When `stickyTracking` is * false and `tooltip.shared` is false, the tooltip will be hidden when * moving the mouse between series. */ stickyTracking?: boolean; /** * (Highcharts) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotPyramidTooltipOptions; /** * (Highstock) The parameter allows setting line series type and use OHLC * indicators. Data in OHLC format is required. */ useOhlcData?: boolean; /** * (Highcharts) Set the initial visibility of the series. */ visible?: boolean; /** * (Highcharts) The width of the funnel compared to the width of the plot * area, or the pixel width if it is a number. */ width?: (number|string); /** * (Highmaps) Define the z index of the series. */ zIndex?: number; } /** * (Highcharts) Events for each single point. */ export interface PlotPyramidPointEventsOptions { /** * (Highcharts) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts) Callback that fires when the point is dropped. The * parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts) Fires when the legend item belonging to the pie point * (slice) is clicked. The `this` keyword refers to the point itself. One * parameter, `event`, is passed to the function, containing common event * information. The default action is to toggle the visibility of the point. * This can be prevented by calling `event.preventDefault()`. */ legendItemClick?: PointLegendItemClickCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts) Fires when the point is removed using the `.remove()` * method. One parameter, `event`, is passed to the function. Returning * `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts) Fires when the point is unselected either programmatically * or following a click on the point. One parameter, `event`, is passed to * the function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) Properties for each single point. */ export interface PlotPyramidPointOptions { /** * (Highcharts) Events for each single point. */ events?: PlotPyramidPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotPyramidStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotPyramidStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotPyramidStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts) How much to brighten the point on interaction. Requires the * main color to be defined in hex or rgb(a) format. * * In styled mode, the hover brightness is by default replaced by a * fill-opacity given in the `.highcharts-point-hover` class. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; } export interface PlotPyramidStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts) The opposite state of a hover for series. */ export interface PlotPyramidStatesInactiveOptions { animation?: PlotPyramidStatesInactiveAnimationOptions; /** * (Highcharts) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highcharts) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotPyramidStatesNormalOptions { /** * (Highcharts) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts) Options for the series states. */ export interface PlotPyramidStatesOptions { /** * (Highcharts) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotPyramidStatesHoverOptions; /** * (Highcharts) The opposite state of a hover for series. */ inactive?: PlotPyramidStatesInactiveOptions; /** * (Highcharts) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotPyramidStatesNormalOptions; /** * (Highmaps) Options for a selected funnel item. */ select?: PlotPyramidStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotPyramidStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highmaps) Options for a selected funnel item. */ export interface PlotPyramidStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotPyramidStatesSelectAnimationOptions; /** * (Highmaps) A specific border color for the selected point. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) A specific color for the selected point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotPyramidTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotPyramidTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotPyramidTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highcharts) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts) The name of a symbol to use for the border around the * tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highcharts) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts) How many decimals to show in each series' y value. This is * overridable in each series' tooltip options object. The default is to * preserve all decimals. */ valueDecimals?: number; /** * (Highcharts) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotRocAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotRocAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotRocAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotRocAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotRocConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotRocConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotRocConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotRocConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotRocConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotRocConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotRocConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotRocDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotRocDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotRocDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotRocDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotRocDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotRocDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotRocDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotRocDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotRocEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotRocLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotRocLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotRocLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotRocLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotRocLastVisiblePriceLabelOptions; } /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotRocMarkerOptions { /** * (Highstock) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highstock) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highstock) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. */ radius?: number; /** * (Highstock) States for a single point marker. */ states?: PlotRocMarkerStatesOptions; /** * (Highstock) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highstock) Animation when hovering over the marker. */ export interface PlotRocMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highstock) The hover state for a single point marker. */ export interface PlotRocMarkerStatesHoverOptions { /** * (Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotRocMarkerStatesHoverAnimationOptions); /** * (Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highstock) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotRocMarkerStatesInactiveOptions { /** * (Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highstock) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotRocMarkerStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highstock) States for a single point marker. */ export interface PlotRocMarkerStatesOptions { /** * (Highstock) The hover state for a single point marker. */ hover?: PlotRocMarkerStatesHoverOptions; inactive?: PlotRocMarkerStatesInactiveOptions; /** * (Highstock) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotRocMarkerStatesNormalOptions; /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotRocMarkerStatesSelectOptions; } /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotRocMarkerStatesSelectOptions { /** * (Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Rate of change indicator (ROC). The indicator value for each * point is defined as: * * `(C - Cn) / Cn * 100` * * where: `C` is the close value of the point of the same x in the linked series * and `Cn` is the close value of the point `n` periods ago. `n` is set through * period. * * This series requires `linkedTo` option to be set. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `roc` series are defined in plotOptions.roc. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotRocOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotRocAccessibilityOptions); /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotRocAnimationOptions); /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highstock) Whether to compare indicator to the main series values or * indicator values. */ compareToMain?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotRocConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotRocDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotRocDragDropOptions; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotRocEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotRocLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotRocLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotRocLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The main series ID that indicator will be * based on. Required for this indicator. */ linkedTo?: string; /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotRocMarkerOptions; /** * (Highstock) The name of the series as shown in the legend, tooltip etc. * If not set, it will be based on a technical indicator type and default * params. */ name?: string; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Paramters used in calculation of regression series' points. */ params?: PlotRocParamsOptions; /** * (Highstock) Properties for each single point. */ point?: PlotRocPointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotRocStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotRocTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotRocZonesOptions>; } /** * (Highstock) Paramters used in calculation of regression series' points. */ export interface PlotRocParamsOptions { /** * (Highstock) The point index which indicator calculations will base. For * example using OHLC data, index=2 means the indicator will be calculated * using Low values. */ index?: number; /** * (Highstock) The base period for indicator calculations. This is the * number of data points which are taken into account for the indicator * calculations. */ period?: number; } /** * (Highstock) Events for each single point. */ export interface PlotRocPointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotRocPointOptions { /** * (Highstock) Events for each single point. */ events?: PlotRocPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotRocStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotRocStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotRocStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotRocStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotRocStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotRocStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotRocStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotRocStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotRocStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotRocStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotRocStatesHoverMarkerStatesHoverOptions; inactive?: PlotRocStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotRocStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotRocStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotRocStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotRocStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotRocStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotRocStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotRocStatesHoverMarkerOptions; } export interface PlotRocStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotRocStatesInactiveOptions { animation?: PlotRocStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotRocStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotRocStatesOptions { /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotRocStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotRocStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotRocStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotRocStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotRocStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotRocStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotRocStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotRocStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotRocStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotRocStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotRocStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotRocStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotRocStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotRocStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotRocStatesSelectMarkerStatesHoverOptions; inactive?: PlotRocStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotRocStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotRocStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotRocStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotRocStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotRocStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotRocStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotRocStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotRocTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotRocTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotRocTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) Number of decimals in indicator series. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotRocZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotRsiAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotRsiAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotRsiAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotRsiAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotRsiConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotRsiConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotRsiConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotRsiConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotRsiConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotRsiConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotRsiConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotRsiDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotRsiDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotRsiDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotRsiDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotRsiDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotRsiDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotRsiDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotRsiDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotRsiEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotRsiLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotRsiLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotRsiLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotRsiLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotRsiLastVisiblePriceLabelOptions; } /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotRsiMarkerOptions { /** * (Highstock) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highstock) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highstock) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. */ radius?: number; /** * (Highstock) States for a single point marker. */ states?: PlotRsiMarkerStatesOptions; /** * (Highstock) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highstock) Animation when hovering over the marker. */ export interface PlotRsiMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highstock) The hover state for a single point marker. */ export interface PlotRsiMarkerStatesHoverOptions { /** * (Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotRsiMarkerStatesHoverAnimationOptions); /** * (Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highstock) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotRsiMarkerStatesInactiveOptions { /** * (Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highstock) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotRsiMarkerStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highstock) States for a single point marker. */ export interface PlotRsiMarkerStatesOptions { /** * (Highstock) The hover state for a single point marker. */ hover?: PlotRsiMarkerStatesHoverOptions; inactive?: PlotRsiMarkerStatesInactiveOptions; /** * (Highstock) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotRsiMarkerStatesNormalOptions; /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotRsiMarkerStatesSelectOptions; } /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotRsiMarkerStatesSelectOptions { /** * (Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Relative strength index (RSI) technical indicator. This series * requires the `linkedTo` option to be set and should be loaded after the * `stock/indicators/indicators.js` file. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `rsi` series are defined in plotOptions.rsi. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotRsiOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotRsiAccessibilityOptions); /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotRsiAnimationOptions); /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highstock) Whether to compare indicator to the main series values or * indicator values. */ compareToMain?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotRsiConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotRsiDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotRsiDragDropOptions; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotRsiEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotRsiLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotRsiLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotRsiLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The main series ID that indicator will be * based on. Required for this indicator. */ linkedTo?: string; /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotRsiMarkerOptions; /** * (Highstock) The name of the series as shown in the legend, tooltip etc. * If not set, it will be based on a technical indicator type and default * params. */ name?: string; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Paramters used in calculation of regression series' points. */ params?: PlotRsiParamsOptions; /** * (Highstock) Properties for each single point. */ point?: PlotRsiPointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotRsiStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotRsiTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotRsiZonesOptions>; } /** * (Highstock) Paramters used in calculation of regression series' points. */ export interface PlotRsiParamsOptions { /** * (Highstock) Number of maximum decimals that are used in RSI calculations. */ decimals?: number; /** * (Highstock) The base period for indicator calculations. This is the * number of data points which are taken into account for the indicator * calculations. */ period?: number; } /** * (Highstock) Events for each single point. */ export interface PlotRsiPointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotRsiPointOptions { /** * (Highstock) Events for each single point. */ events?: PlotRsiPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotRsiStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotRsiStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotRsiStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotRsiStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotRsiStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotRsiStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotRsiStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotRsiStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotRsiStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotRsiStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotRsiStatesHoverMarkerStatesHoverOptions; inactive?: PlotRsiStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotRsiStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotRsiStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotRsiStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotRsiStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotRsiStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotRsiStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotRsiStatesHoverMarkerOptions; } export interface PlotRsiStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotRsiStatesInactiveOptions { animation?: PlotRsiStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotRsiStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotRsiStatesOptions { /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotRsiStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotRsiStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotRsiStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotRsiStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotRsiStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotRsiStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotRsiStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotRsiStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotRsiStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotRsiStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotRsiStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotRsiStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotRsiStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotRsiStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotRsiStatesSelectMarkerStatesHoverOptions; inactive?: PlotRsiStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotRsiStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotRsiStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotRsiStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotRsiStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotRsiStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotRsiStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotRsiStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotRsiTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotRsiTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotRsiTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) Number of decimals in indicator series. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotRsiZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts) Keyboard navigation for a series */ export interface PlotSankeyAccessibilityKeyboardNavigationOptions { /** * (Highcharts) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highcharts) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotSankeyAccessibilityOptions { /** * (Highcharts) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highcharts) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highcharts) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotSankeyAccessibilityKeyboardNavigationOptions); /** * (Highcharts) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotSankeyAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotSankeyConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotSankeyConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotSankeyConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotSankeyConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotSankeyConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotSankeyConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotSankeyConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotSankeyDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. Defaults to `10`. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * Options for the series data labels, appearing next to each data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names. */ export interface PlotSankeyDataLabelsOptionsObject extends DataLabelsOptionsObject { /** * The format string specifying what to show for _nodes_ in the sankey * diagram. By default the `nodeFormatter` returns `{point.name}`. */ nodeFormat?: string; /** * Callback to format data labels for _nodes_ in the sankey diagram. The * `nodeFormat` option takes precedence over the `nodeFormatter`. */ nodeFormatter?: FormatterCallbackFunction<SankeyNodeObject>; } /** * (Highcharts) Options for the drag handles. */ export interface PlotSankeyDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface PlotSankeyDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotSankeyDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: PlotSankeyDragDropGuideBoxDefaultOptions; } /** * (Highcharts) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotSankeyDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: PlotSankeyDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotSankeyDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotSankeyEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotSankeyLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotSankeyLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotSankeyLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotSankeyLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotSankeyLastVisiblePriceLabelOptions; } /** * (Highcharts) Set options on specific levels. Takes precedence over series * options, but not point options. */ export interface PlotSankeyLevelsOptions { /** * (Highcharts) Can set `borderColor` on all points which lies on the same * level. */ borderColor?: ColorString; /** * (Highcharts) Can set `borderWidth` on all points which lies on the same * level. */ borderWidth?: number; /** * (Highcharts) Can set `color` on all points which lies on the same level. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Can set `colorByPoint` on all points which lies on the same * level. */ colorByPoint?: boolean; /** * (Highcharts) Can set `dataLabels` on all points which lies on the same * level. */ dataLabels?: object; /** * (Highcharts) Decides which level takes effect from the options set in the * levels object. */ level?: number; /** * (Highcharts) Can set `linkOpacity` on all points which lies on the same * level. */ linkOpacity?: number; /** * (Highcharts) Can set `states` on all points which lies on the same level. */ states?: object; } /** * (Highcharts) A sankey diagram is a type of flow diagram, in which the width * of the link between two nodes is shown proportionally to the flow quantity. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `sankey` series are defined in plotOptions.sankey. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotSankeyOptions { /** * (Highcharts) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotSankeyAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highcharts) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotSankeyAnimationOptions); /** * (Highcharts) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts, Highstock, Gantt) The color of the border surrounding each * column or bar. * * In styled mode, the border stroke can be set with the `.highcharts-point` * rule. */ borderColor?: ColorString; /** * (Highcharts, Highstock, Gantt) The width of the border surrounding each * column or bar. Defaults to `1` when there is room for a border, but to * `0` when the columns are so dense that a border would cover the next * column. * * In styled mode, the stroke width can be set with the `.highcharts-point` * rule. */ borderWidth?: number; /** * (Highcharts) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highcharts) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts, Highstock, Gantt) When using automatic point colors pulled * from the global colors or series-specific plotOptions.column.colors * collections, this option determines whether the chart should receive one * color per series or one color per point. * * In styled mode, the `colors` or `series.colors` arrays are not supported, * and instead this option gives the points individual color class names on * the form `highcharts-color-{n}`. */ colorByPoint?: boolean; /** * (Highcharts) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) A series specific or series type specific * color set to apply instead of the global colors when colorByPoint is * true. */ colors?: Array<(ColorString|GradientColorObject|PatternObject)>; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotSankeyConnectorsOptions; /** * (Highcharts) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highcharts) Higher numbers makes the links in a sankey diagram or * dependency wheelrender more curved. A `curveFactor` of 0 makes the lines * straight. */ curveFactor?: number; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotSankeyDataGroupingOptions; /** * (Highcharts) Options for the data labels appearing on top of the nodes * and links. For sankey charts, data labels are visible for the nodes by * default, but hidden for links. This is controlled by modifying the * `nodeFormat`, and the `format` that applies to links and is an empty * string by default. */ dataLabels?: (DataLabelsOptionsObject|PlotSankeyDataLabelsOptionsObject); /** * (Highcharts) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotSankeyDragDropOptions; /** * (Highcharts) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotSankeyEventsOptions; /** * (Highcharts) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highcharts) Export-data module required. When set to `false` will * prevent the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts) An array specifying which option maps to which key in the * data point array. This makes it convenient to work with unstructured data * arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotSankeyLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotSankeyLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotSankeyLastVisiblePriceOptions; /** * (Highcharts) Set options on specific levels. Takes precedence over series * options, but not point options. */ levels?: Array<PlotSankeyLevelsOptions>; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts) Opacity for the links between nodes in the sankey diagram. */ linkOpacity?: number; /** * (Highcharts, Highstock, Gantt) The minimal height for a column or width * for a bar. By default, 0 values are not shown. To visualize a 0 (or close * to zero) point, set the minimal point length to a pixel value like 3\. In * stacked column charts, minPointLength might not be respected for tightly * packed values. */ minPointLength?: number; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts) The padding between nodes in a sankey diagram or dependency * wheel, in pixels. */ nodePadding?: number; /** * (Highcharts) The pixel width of each node in a sankey diagram or * dependency wheel, or the height in case the chart is inverted. */ nodeWidth?: number; /** * (Highcharts) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highcharts) Properties for each single point. */ point?: PlotSankeyPointOptions; /** * (Highcharts) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highcharts) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts) If set to `true`, the accessibility module will skip past * the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; states?: PlotSankeyStatesOptions; /** * (Highcharts) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotSankeyTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highcharts) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; } /** * (Highcharts) Events for each single point. */ export interface PlotSankeyPointEventsOptions { /** * (Highcharts) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts) Callback that fires when the point is dropped. The * parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts) Fires when the point is removed using the `.remove()` * method. One parameter, `event`, is passed to the function. Returning * `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts) Fires when the point is unselected either programmatically * or following a click on the point. One parameter, `event`, is passed to * the function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) Properties for each single point. */ export interface PlotSankeyPointOptions { /** * (Highcharts) Events for each single point. */ events?: PlotSankeyPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotSankeyStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock, Gantt) Options for the hovered point. These settings * override the normal state options when a point is moused over or touched. */ export interface PlotSankeyStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotSankeyStatesHoverAnimationOptions); /** * (Highcharts, Gantt) A specific border color for the hovered point. * Defaults to inherit the normal state border color. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) How much to brighten the point on * interaction. Requires the main color to be defined in hex or rgb(a) * format. * * In styled mode, the hover brightening is by default replaced with a * fill-opacity set in the `.highcharts-point:hover` rule. */ brightness?: number; /** * (Highcharts, Gantt) A specific color for the hovered point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) Enable separate styles for the hovered * series to visualize that the user hovers either the series itself or the * legend. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) Opacity for the links between nodes in the * sankey diagram in hover mode. */ linkOpacity?: number; } /** * (Highcharts) Animation when not hovering over the marker. */ export interface PlotSankeyStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts) The opposite state of a hover for a single point node/link. */ export interface PlotSankeyStatesInactiveOptions { /** * (Highcharts) Animation when not hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotSankeyStatesInactiveAnimationOptions); /** * (Highcharts) Opacity for the links between nodes in the sankey diagram in * inactive mode. */ linkOpacity?: number; /** * (Highcharts) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highcharts) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotSankeyStatesNormalOptions { /** * (Highcharts) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotSankeyStatesOptions { /** * (Highcharts, Highstock, Gantt) Options for the hovered point. These * settings override the normal state options when a point is moused over or * touched. */ hover?: PlotSankeyStatesHoverOptions; /** * (Highcharts) The opposite state of a hover for a single point node/link. */ inactive?: PlotSankeyStatesInactiveOptions; /** * (Highcharts) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotSankeyStatesNormalOptions; /** * (Highcharts, Highstock, Gantt) Options for the selected point. These * settings override the normal state options when a point is selected. */ select?: PlotSankeyStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotSankeyStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock, Gantt) Options for the selected point. These settings * override the normal state options when a point is selected. */ export interface PlotSankeyStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotSankeyStatesSelectAnimationOptions; /** * (Highcharts, Highstock, Gantt) A specific border color for the selected * point. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) A specific color for the selected point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) Enable separate styles for the hovered * series to visualize that the user hovers either the series itself or the * legend. */ enabled?: boolean; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotSankeyTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotSankeyTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotSankeyTooltipDateTimeLabelFormatsOptions|Dictionary<string>); distance?: number; /** * (Highcharts) Whether the tooltip should follow the pointer or stay fixed * on the item. */ followPointer?: boolean; /** * (Highcharts) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts) The name of a symbol to use for the border around the * tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts) The format string specifying what to show for _nodes_ in * tooltip of a diagram series, as opposed to links. */ nodeFormat?: string; /** * (Highcharts) A callback for defining the format for _nodes_ in the * chart's tooltip, as opposed to links. */ nodeFormatter?: FormatterCallbackFunction<SankeyNodeObject>; /** * (Highcharts) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highcharts) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts) How many decimals to show in each series' y value. This is * overridable in each series' tooltip options object. The default is to * preserve all decimals. */ valueDecimals?: number; /** * (Highcharts) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts) Keyboard navigation for a series */ export interface PlotScatter3dAccessibilityKeyboardNavigationOptions { /** * (Highcharts) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highcharts) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotScatter3dAccessibilityOptions { /** * (Highcharts) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highcharts) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highcharts) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotScatter3dAccessibilityKeyboardNavigationOptions); /** * (Highcharts) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotScatter3dAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotScatter3dConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotScatter3dConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotScatter3dConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotScatter3dConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotScatter3dConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotScatter3dConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotScatter3dConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotScatter3dDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts) Options for the drag handles. */ export interface PlotScatter3dDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface PlotScatter3dDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotScatter3dDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: PlotScatter3dDragDropGuideBoxDefaultOptions; } /** * (Highcharts) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotScatter3dDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: PlotScatter3dDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotScatter3dDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotScatter3dEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock) Apply a jitter effect for the rendered markers. When * plotting discrete values, a little random noise may help telling the points * apart. The jitter setting applies a random displacement of up to `n` axis * units in either direction. So for example on a horizontal X axis, setting the * `jitter.x` to 0.24 will render the point in a random position between 0.24 * units to the left and 0.24 units to the right of the true axis position. On a * category axis, setting it to 0.5 will fill up the bin and make the data * appear continuous. * * When rendered on top of a box plot or a column series, a jitter value of 0.24 * will correspond to the underlying series' default groupPadding and * pointPadding settings. */ export interface PlotScatter3dJitterOptions { /** * (Highcharts, Highstock) The maximal X offset for the random jitter * effect. */ x?: number; /** * (Highcharts, Highstock) The maximal Y offset for the random jitter * effect. */ y?: number; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotScatter3dLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotScatter3dLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotScatter3dLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotScatter3dLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotScatter3dLastVisiblePriceLabelOptions; } /** * (Highcharts) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotScatter3dMarkerOptions { /** * (Highcharts) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highcharts) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highcharts) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highcharts) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts) The radius of the point marker. */ radius?: number; /** * (Highcharts) States for a single point marker. */ states?: PlotScatter3dMarkerStatesOptions; /** * (Highcharts) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts) Animation when hovering over the marker. */ export interface PlotScatter3dMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts) The hover state for a single point marker. */ export interface PlotScatter3dMarkerStatesHoverOptions { /** * (Highcharts) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotScatter3dMarkerStatesHoverAnimationOptions); /** * (Highcharts) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highcharts) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotScatter3dMarkerStatesInactiveOptions { /** * (Highcharts) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotScatter3dMarkerStatesNormalOptions { /** * (Highcharts) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts) States for a single point marker. */ export interface PlotScatter3dMarkerStatesOptions { /** * (Highcharts) The hover state for a single point marker. */ hover?: PlotScatter3dMarkerStatesHoverOptions; inactive?: PlotScatter3dMarkerStatesInactiveOptions; /** * (Highcharts) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotScatter3dMarkerStatesNormalOptions; /** * (Highcharts) The appearance of the point marker when selected. In order * to allow a point to be selected, set the `series.allowPointSelect` option * to true. */ select?: PlotScatter3dMarkerStatesSelectOptions; } /** * (Highcharts) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotScatter3dMarkerStatesSelectOptions { /** * (Highcharts) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts) A 3D scatter plot uses x, y and z coordinates to display values * for three variables for a set of data. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `scatter3d` series are defined in plotOptions.scatter3d. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotScatter3dOptions { /** * (Highcharts) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotScatter3dAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highcharts) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotScatter3dAnimationOptions); /** * (Highcharts) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highcharts) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highcharts) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highcharts) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotScatter3dConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highcharts) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highcharts) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotScatter3dDataGroupingOptions; /** * (Highcharts) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotScatter3dDragDropOptions; /** * (Highcharts) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotScatter3dEventsOptions; /** * (Highcharts) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highcharts) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highcharts) Export-data module required. When set to `false` will * prevent the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock) Apply a jitter effect for the rendered markers. * When plotting discrete values, a little random noise may help telling the * points apart. The jitter setting applies a random displacement of up to * `n` axis units in either direction. So for example on a horizontal X * axis, setting the `jitter.x` to 0.24 will render the point in a random * position between 0.24 units to the left and 0.24 units to the right of * the true axis position. On a category axis, setting it to 0.5 will fill * up the bin and make the data appear continuous. * * When rendered on top of a box plot or a column series, a jitter value of * 0.24 will correspond to the underlying series' default groupPadding and * pointPadding settings. */ jitter?: PlotScatter3dJitterOptions; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts) An array specifying which option maps to which key in the * data point array. This makes it convenient to work with unstructured data * arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotScatter3dLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotScatter3dLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotScatter3dLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) The width of the line connecting the data points. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts) Options for the point markers of line-like series. * Properties like `fillColor`, `lineColor` and `lineWidth` define the * visual appearance of the markers. Other series types, like column series, * don't have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotScatter3dMarkerOptions; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts) The color for the parts of the graph or points that are * below the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highcharts) Properties for each single point. */ point?: PlotScatter3dPointOptions; /** * (Highcharts) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, `pointInterval` defines the interval of the x values. For * example, if a series contains one value every decade starting from year * 0, set `pointInterval` to `10`. In true `datetime` axes, the * `pointInterval` is set in milliseconds. * * It can be also be combined with `pointIntervalUnit` to draw irregular * time intervals. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointInterval?: number; /** * (Highcharts, Highstock, Gantt) On datetime series, this allows for * setting the pointInterval to irregular time units, `day`, `month` and * `year`. A day is usually the same as 24 hours, but `pointIntervalUnit` * also takes the DST crossover into consideration when dealing with local * time. Combine this option with `pointInterval` to draw weeks, quarters, 6 * months, 10 years etc. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointIntervalUnit?: OptionsPointIntervalUnitValue; /** * (Highstock) The width of each point on the x axis. For example in a * column chart with one value each day, the pointRange would be 1 day (= 24 * * 3600 * * * 1000 milliseconds). This is normally computed automatically, but this * option can be used to override the automatic value. */ pointRange?: number; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, pointStart defines on what value to start. For example, if a * series contains one yearly value starting from 1945, set pointStart to * 1945. */ pointStart?: number; /** * (Highcharts) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highcharts) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts) If set to `true`, the accessibility module will skip past * the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; /** * (Highcharts, Highstock) Whether to stack the values of each series on top * of each other. Possible values are `undefined` to disable, `"normal"` to * stack by value or `"percent"`. When stacking is enabled, data must be * sorted in ascending X order. A special stacking option is with the * streamgraph series type, where the stacking option is set to `"stream"`. * The second one is `"overlap"`, which only applies to waterfall series. */ stacking?: OptionsStackingValue; states?: PlotScatter3dStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highcharts, Highstock) Sticky tracking of mouse events. When true, the * `mouseOut` event on a series isn't triggered until the mouse moves over * another series, or out of the plot area. When false, the `mouseOut` event * on a series is triggered when the mouse leaves the area around the * series' graph or markers. This also implies the tooltip. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highcharts, Highstock) A configuration object for the tooltip rendering * of each single series. Properties are inherited from tooltip. Overridable * properties are `headerFormat`, `pointFormat`, `yDecimals`, `xDateFormat`, * `yPrefix` and `ySuffix`. Unlike other series, in a scatter plot the * series.name by default shows in the headerFormat and point.x and point.y * in the pointFormat. */ tooltip?: PlotScatter3dTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highcharts) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotScatter3dZonesOptions>; } /** * (Highcharts) Events for each single point. */ export interface PlotScatter3dPointEventsOptions { /** * (Highcharts) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts) Callback that fires when the point is dropped. The * parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts) Fires when the point is removed using the `.remove()` * method. One parameter, `event`, is passed to the function. Returning * `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts) Fires when the point is unselected either programmatically * or following a click on the point. One parameter, `event`, is passed to * the function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) Properties for each single point. */ export interface PlotScatter3dPointOptions { /** * (Highcharts) Events for each single point. */ events?: PlotScatter3dPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotScatter3dStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotScatter3dStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotScatter3dStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotScatter3dStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotScatter3dStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotScatter3dStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotScatter3dStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotScatter3dStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotScatter3dStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotScatter3dStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotScatter3dStatesHoverMarkerStatesHoverOptions; inactive?: PlotScatter3dStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotScatter3dStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotScatter3dStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotScatter3dStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotScatter3dStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotScatter3dStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotScatter3dStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotScatter3dStatesHoverMarkerOptions; } export interface PlotScatter3dStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts) The opposite state of a hover for series. */ export interface PlotScatter3dStatesInactiveOptions { animation?: PlotScatter3dStatesInactiveAnimationOptions; /** * (Highcharts) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highcharts) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotScatter3dStatesNormalOptions { /** * (Highcharts) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotScatter3dStatesOptions { /** * (Highcharts) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotScatter3dStatesHoverOptions; /** * (Highcharts) The opposite state of a hover for series. */ inactive?: PlotScatter3dStatesInactiveOptions; /** * (Highcharts) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotScatter3dStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotScatter3dStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotScatter3dStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotScatter3dStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotScatter3dStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotScatter3dStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotScatter3dStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotScatter3dStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotScatter3dStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotScatter3dStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotScatter3dStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotScatter3dStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotScatter3dStatesSelectMarkerStatesHoverOptions; inactive?: PlotScatter3dStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotScatter3dStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotScatter3dStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotScatter3dStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotScatter3dStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotScatter3dStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotScatter3dStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotScatter3dStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotScatter3dTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts, Highstock) A configuration object for the tooltip rendering of * each single series. Properties are inherited from tooltip. Overridable * properties are `headerFormat`, `pointFormat`, `yDecimals`, `xDateFormat`, * `yPrefix` and `ySuffix`. Unlike other series, in a scatter plot the * series.name by default shows in the headerFormat and point.x and point.y in * the pointFormat. */ export interface PlotScatter3dTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotScatter3dTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highcharts, Highstock) Whether the tooltip should follow the mouse as it * moves across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts, Highstock) Whether the tooltip should update as the finger * moves on a touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts, Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts, Highstock) The HTML of the tooltip header line. Variables * are enclosed by curly brackets. Available variables are `point.key`, * `series.name`, `series.color` and other members from the `point` and * `series` objects. The `point.key` variable contains the category name, x * value or datetime string depending on the type of axis. For datetime * axes, the `point.key` date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts, Highstock) The name of a symbol to use for the border around * the tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts, Highstock) The number of milliseconds to wait until the * tooltip is hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts, Highstock) The HTML of the null point's line in the tooltip. * Works analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts, Highstock) Callback function to format the text of the * tooltip for visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts, Highstock) Whether to allow the tooltip to render outside * the chart's SVG element box. By default (`false`), the tooltip is * rendered within the chart's SVG element, which results in the tooltip * being aligned inside the chart area. For small charts, this may result in * clipping or overlapping. When `true`, a separate SVG element is created * and overlaid on the page, allowing the tooltip to be aligned inside the * page itself. */ outside?: boolean; /** * (Highcharts, Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts, Highstock) The HTML of the point's line in the tooltip. * Variables are enclosed by curly brackets. Available variables are * point.x, point.y, series. name and series.color and other properties on * the same form. Furthermore, `point.y` can be extended by the * `tooltip.valuePrefix` and `tooltip.valueSuffix` variables. This can also * be overridden for each series, which makes it a good hook for displaying * units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts, Highstock) A callback function for formatting the HTML * output for a single point in the tooltip. Like the `pointFormat` string, * but with more flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts, Highstock) How many decimals to show in each series' y * value. This is overridable in each series' tooltip options object. The * default is to preserve all decimals. */ valueDecimals?: number; /** * (Highcharts, Highstock) A string to prepend to each series' y value. * Overridable in each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts, Highstock) A string to append to each series' y value. * Overridable in each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotScatter3dZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts, Highstock) Keyboard navigation for a series */ export interface PlotScatterAccessibilityKeyboardNavigationOptions { /** * (Highcharts, Highstock) Enable/disable keyboard navigation support for a * specific series. */ enabled?: boolean; } /** * (Highcharts, Highstock) Accessibility options for a series. Requires the * accessibility module. */ export interface PlotScatterAccessibilityOptions { /** * (Highcharts, Highstock) Provide a description of the series, announced to * screen readers. */ description?: string; /** * (Highcharts, Highstock) Enable/disable accessibility functionality for a * specific series. */ enabled?: boolean; /** * (Highcharts, Highstock) Expose only the series element to screen readers, * not its points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts, Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotScatterAccessibilityKeyboardNavigationOptions); /** * (Highcharts, Highstock) Formatter function to use instead of the default * for point descriptions. Same as * `accessibility.pointDescriptionFormatter`, but for a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts, Highstock) Enable or disable the initial animation when a series * is displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotScatterAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotScatterConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotScatterConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotScatterConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotScatterConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotScatterConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotScatterConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotScatterConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotScatterDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts, Highstock) Options for the drag handles. */ export interface PlotScatterDragDropDragHandleOptions { /** * (Highcharts, Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts, Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The mouse cursor to use for the drag handles. By * default this is intelligently switching between `ew-resize` and * `ns-resize` depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts, Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts, Highstock) Function to define the SVG path to use for the * drag handles. Takes the point as argument. Should return an SVG path in * array format. The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts, Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box default state. */ export interface PlotScatterDragDropGuideBoxDefaultOptions { /** * (Highcharts, Highstock) CSS class name of the guide box in this state. * Defaults to `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts, Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Guide box cursor. */ cursor?: string; /** * (Highcharts, Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts, Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts, Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box. The guide box has * one state by default, the `default` state. */ export interface PlotScatterDragDropGuideBoxOptions { /** * (Highcharts, Highstock) Style options for the guide box default state. */ default?: PlotScatterDragDropGuideBoxDefaultOptions; } /** * (Highcharts, Highstock) The draggable-points module allows points to be moved * around or modified in the chart. In addition to the options mentioned under * the `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotScatterDragDropOptions { /** * (Highcharts, Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts, Highstock) Enable dragging in the Y dimension. Note that * this is not supported for TreeGrid axes (the default axis type in Gantt * charts). */ draggableY?: boolean; /** * (Highcharts, Highstock) Options for the drag handles. */ dragHandle?: PlotScatterDragDropDragHandleOptions; /** * (Highcharts, Highstock) Set the maximum X value the points can be moved * to. */ dragMaxX?: number; /** * (Highcharts, Highstock) Set the maximum Y value the points can be moved * to. */ dragMaxY?: number; /** * (Highcharts, Highstock) Set the minimum X value the points can be moved * to. */ dragMinX?: number; /** * (Highcharts, Highstock) Set the minimum Y value the points can be moved * to. */ dragMinY?: number; /** * (Highcharts, Highstock) The X precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionX?: number; /** * (Highcharts, Highstock) The Y precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionY?: number; /** * (Highcharts, Highstock) The amount of pixels to drag the pointer before * it counts as a drag operation. This prevents drag/drop to fire when just * clicking or selecting points. */ dragSensitivity?: number; /** * (Highcharts, Highstock) Group the points by a property. Points with the * same property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts, Highstock) Style options for the guide box. The guide box * has one state by default, the `default` state. */ guideBox?: (PlotScatterDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts, Highstock) Update points as they are dragged. If false, a * guide box is drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock) General event handlers for the series items. These * event hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotScatterEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts, Highstock) Fires when the checkbox next to the series' name * in the legend is clicked. One parameter, `event`, is passed to the * function. The state of the checkbox is found by `event.checked`. The * checked item is found by `event.item`. Return `false` to prevent the * default action which is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is clicked. One parameter, * `event`, is passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is hidden after chart * generation time, either by clicking the legend item or by calling * `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts, Highstock) Fires when the legend item belonging to the * series is clicked. One parameter, `event`, is passed to the function. The * default action is to toggle the visibility of the series. This can be * prevented by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse leaves the graph. One * parameter, `event`, is passed to the function, containing common event * information. If the stickyTracking option is true, `mouseOut` doesn't * happen before the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse enters the graph. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is shown after chart * generation time, either by clicking the legend item or by calling * `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock) Apply a jitter effect for the rendered markers. When * plotting discrete values, a little random noise may help telling the points * apart. The jitter setting applies a random displacement of up to `n` axis * units in either direction. So for example on a horizontal X axis, setting the * `jitter.x` to 0.24 will render the point in a random position between 0.24 * units to the left and 0.24 units to the right of the true axis position. On a * category axis, setting it to 0.5 will fill up the bin and make the data * appear continuous. * * When rendered on top of a box plot or a column series, a jitter value of 0.24 * will correspond to the underlying series' default groupPadding and * pointPadding settings. */ export interface PlotScatterJitterOptions { /** * (Highcharts, Highstock) The maximal X offset for the random jitter * effect. */ x?: number; /** * (Highcharts, Highstock) The maximal Y offset for the random jitter * effect. */ y?: number; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotScatterLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotScatterLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotScatterLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotScatterLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotScatterLastVisiblePriceLabelOptions; } /** * (Highcharts, Highstock) Options for the point markers of line-like series. * Properties like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't have * markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotScatterMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotScatterMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotScatterMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotScatterMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotScatterMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotScatterMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotScatterMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotScatterMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotScatterMarkerStatesHoverOptions; inactive?: PlotScatterMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotScatterMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotScatterMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotScatterMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts, Highstock) A scatter plot uses cartesian coordinates to display * values for two variables for a set of data. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `scatter` series are defined in plotOptions.scatter. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotScatterOptions { /** * (Highcharts, Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotScatterAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highcharts, Highstock) Allow this series' points to be selected by * clicking on the graphic (columns, point markers, pie slices, map areas * etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts, Highstock) Enable or disable the initial animation when a * series is displayed. The animation can also be set as a configuration * object. Please note that this option only applies to the initial * animation of the series itself. For other animations, see chart.animation * and the animation parameter under the API methods. The following * properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotScatterAnimationOptions); /** * (Highcharts, Highstock) For some series, there is a limit that shuts down * initial animation by default when the total number of points in the chart * is too high. For example, for a column chart and its derivatives, * animation does not run if there is more than 250 points totally. To * disable this cap, set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highcharts, Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts, Highstock) Set the point threshold for when a series should * enter boost mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highcharts, Highstock) An additional class name to apply to the series' * graphical elements. This option does not replace default class names of * the graphical element. */ className?: string; /** * (Highcharts, Highstock) Disable this option to allow series rendering in * the whole plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts, Highstock) The main color of the series. In line type series * it applies to the line and the point markers unless otherwise specified. * In bar type series it applies to the bars unless a color is specified per * point. The default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts, Highstock) Styled mode only. A specific color index to use * for the series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotScatterConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highcharts, Highstock) You can set the cursor to "pointer" if you have * click events attached to the series, to signal to the user that the * points and lines can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highcharts, Highstock) A name for the dash style to use for the graph, * or for some series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotScatterDataGroupingOptions; /** * (Highcharts, Highstock) Options for the series data labels, appearing * next to each data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts, Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts, Highstock) The draggable-points module allows points to be * moved around or modified in the chart. In addition to the options * mentioned under the `dragDrop` API structure, the module fires three * events, point.dragStart, point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotScatterDragDropOptions; /** * (Highcharts, Highstock) Enable or disable the mouse tracking for a * specific series. This includes point tooltips and click events on graphs * and points. For large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts, Highstock) General event handlers for the series items. * These event hooks can also be attached to the series at run time using * the `Highcharts.addEvent` function. */ events?: PlotScatterEventsOptions; /** * (Highcharts, Highstock) By default, series are exposed to screen readers * as regions. By enabling this option, the series element itself will be * exposed in the same way as the data points. This is useful if the series * is not used as a grouping entity in the chart, but you still want to * attach a description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highcharts, Highstock) Determines whether the series should look for the * nearest point in both dimensions or just the x-dimension when hovering * the series. Defaults to `'xy'` for scatter series and `'x'` for most * other series. If the data has duplicate x-values, it is recommended to * set this to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highcharts, Highstock) Export-data module required. When set to `false` * will prevent the series data from being included in any form of data * export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock) Apply a jitter effect for the rendered markers. * When plotting discrete values, a little random noise may help telling the * points apart. The jitter setting applies a random displacement of up to * `n` axis units in either direction. So for example on a horizontal X * axis, setting the `jitter.x` to 0.24 will render the point in a random * position between 0.24 units to the left and 0.24 units to the right of * the true axis position. On a category axis, setting it to 0.5 will fill * up the bin and make the data appear continuous. * * When rendered on top of a box plot or a column series, a jitter value of * 0.24 will correspond to the underlying series' default groupPadding and * pointPadding settings. */ jitter?: PlotScatterJitterOptions; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts, Highstock) An array specifying which option maps to which * key in the data point array. This makes it convenient to work with * unstructured data arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotScatterLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotScatterLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotScatterLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) The width of the line connecting the data points. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts, Highstock) Options for the point markers of line-like * series. Properties like `fillColor`, `lineColor` and `lineWidth` define * the visual appearance of the markers. Other series types, like column * series, don't have markers, but have visual options on the series level * instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotScatterMarkerOptions; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts, Highstock) The color for the parts of the graph or points * that are below the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Opacity of a series parts: line, fill (e.g. area) * and dataLabels. */ opacity?: number; /** * (Highcharts, Highstock) Properties for each single point. */ point?: PlotScatterPointOptions; /** * (Highcharts, Highstock) Same as accessibility.pointDescriptionFormatter, * but for an individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, `pointInterval` defines the interval of the x values. For * example, if a series contains one value every decade starting from year * 0, set `pointInterval` to `10`. In true `datetime` axes, the * `pointInterval` is set in milliseconds. * * It can be also be combined with `pointIntervalUnit` to draw irregular * time intervals. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointInterval?: number; /** * (Highcharts, Highstock, Gantt) On datetime series, this allows for * setting the pointInterval to irregular time units, `day`, `month` and * `year`. A day is usually the same as 24 hours, but `pointIntervalUnit` * also takes the DST crossover into consideration when dealing with local * time. Combine this option with `pointInterval` to draw weeks, quarters, 6 * months, 10 years etc. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointIntervalUnit?: OptionsPointIntervalUnitValue; /** * (Highstock) The width of each point on the x axis. For example in a * column chart with one value each day, the pointRange would be 1 day (= 24 * * 3600 * * * 1000 milliseconds). This is normally computed automatically, but this * option can be used to override the automatic value. */ pointRange?: number; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, pointStart defines on what value to start. For example, if a * series contains one yearly value starting from 1945, set pointStart to * 1945. */ pointStart?: number; /** * (Highcharts, Highstock) Whether to select the series initially. If * `showCheckbox` is true, the checkbox next to the series name in the * legend will be checked for a selected series. */ selected?: boolean; /** * (Highcharts, Highstock) If true, a checkbox is displayed next to the * legend item to allow selecting the series. The state of the checkbox is * determined by the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts, Highstock) Whether to display this particular series or * series type in the legend. The default value is `true` for standalone * series, `false` for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts, Highstock) If set to `true`, the accessibility module will * skip past the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; /** * (Highcharts, Highstock) Whether to stack the values of each series on top * of each other. Possible values are `undefined` to disable, `"normal"` to * stack by value or `"percent"`. When stacking is enabled, data must be * sorted in ascending X order. A special stacking option is with the * streamgraph series type, where the stacking option is set to `"stream"`. * The second one is `"overlap"`, which only applies to waterfall series. */ stacking?: OptionsStackingValue; states?: PlotScatterStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highcharts, Highstock) Sticky tracking of mouse events. When true, the * `mouseOut` event on a series isn't triggered until the mouse moves over * another series, or out of the plot area. When false, the `mouseOut` event * on a series is triggered when the mouse leaves the area around the * series' graph or markers. This also implies the tooltip. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highcharts, Highstock) A configuration object for the tooltip rendering * of each single series. Properties are inherited from tooltip. Overridable * properties are `headerFormat`, `pointFormat`, `yDecimals`, `xDateFormat`, * `yPrefix` and `ySuffix`. Unlike other series, in a scatter plot the * series.name by default shows in the headerFormat and point.x and point.y * in the pointFormat. */ tooltip?: PlotScatterTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highcharts, Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotScatterZonesOptions>; } /** * (Highcharts, Highstock) Events for each single point. */ export interface PlotScatterPointEventsOptions { /** * (Highcharts, Highstock) Fires when a point is clicked. One parameter, * `event`, is passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock) Callback that fires while dragging a point. The * mouse event is passed in as parameter. The original data can be accessed * from `e.origin`, and the new point values can be accessed from * `e.newPoints`. If there is only a single point being updated, it can be * accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock) Callback that fires when starting to drag a * point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock) Callback that fires when the point is dropped. * The parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse leaves the area close to the * point. One parameter, `event`, is passed to the function, containing * common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse enters the area close to the * point. One parameter, `event`, is passed to the function, containing * common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is updated programmatically * through the `.update()` method. One parameter, `event`, is passed to the * function. The new point options can be accessed through `event.options`. * Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts, Highstock) Properties for each single point. */ export interface PlotScatterPointOptions { /** * (Highcharts, Highstock) Events for each single point. */ events?: PlotScatterPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotScatterStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotScatterStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotScatterStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotScatterStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotScatterStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotScatterStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotScatterStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotScatterStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotScatterStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotScatterStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotScatterStatesHoverMarkerStatesHoverOptions; inactive?: PlotScatterStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotScatterStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotScatterStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotScatterStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts, Highstock) Options for the hovered series. These settings * override the normal state options when a series is moused over or touched. */ export interface PlotScatterStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotScatterStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Enable separate styles for the hovered series to * visualize that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotScatterStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotScatterStatesHoverMarkerOptions; } export interface PlotScatterStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The opposite state of a hover for series. */ export interface PlotScatterStatesInactiveOptions { animation?: PlotScatterStatesInactiveAnimationOptions; /** * (Highcharts, Highstock) Opacity of series elements (dataLabels, line, * area). */ opacity?: number; } /** * (Highcharts, Highstock) The normal state of a series, or for point items in * column, pie and similar series. Currently only used for setting animation * when returning to normal state from hover. */ export interface PlotScatterStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotScatterStatesOptions { /** * (Highcharts, Highstock) Options for the hovered series. These settings * override the normal state options when a series is moused over or * touched. */ hover?: PlotScatterStatesHoverOptions; /** * (Highcharts, Highstock) The opposite state of a hover for series. */ inactive?: PlotScatterStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a series, or for point items * in column, pie and similar series. Currently only used for setting * animation when returning to normal state from hover. */ normal?: PlotScatterStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotScatterStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotScatterStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotScatterStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotScatterStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotScatterStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotScatterStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotScatterStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotScatterStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotScatterStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotScatterStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotScatterStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotScatterStatesSelectMarkerStatesHoverOptions; inactive?: PlotScatterStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotScatterStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotScatterStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotScatterStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotScatterStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotScatterStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotScatterStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotScatterStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotScatterTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts, Highstock) A configuration object for the tooltip rendering of * each single series. Properties are inherited from tooltip. Overridable * properties are `headerFormat`, `pointFormat`, `yDecimals`, `xDateFormat`, * `yPrefix` and `ySuffix`. Unlike other series, in a scatter plot the * series.name by default shows in the headerFormat and point.x and point.y in * the pointFormat. */ export interface PlotScatterTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotScatterTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highcharts, Highstock) Whether the tooltip should follow the mouse as it * moves across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts, Highstock) Whether the tooltip should update as the finger * moves on a touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts, Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts, Highstock) The HTML of the tooltip header line. Variables * are enclosed by curly brackets. Available variables are `point.key`, * `series.name`, `series.color` and other members from the `point` and * `series` objects. The `point.key` variable contains the category name, x * value or datetime string depending on the type of axis. For datetime * axes, the `point.key` date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts, Highstock) The name of a symbol to use for the border around * the tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts, Highstock) The number of milliseconds to wait until the * tooltip is hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts, Highstock) The HTML of the null point's line in the tooltip. * Works analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts, Highstock) Callback function to format the text of the * tooltip for visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts, Highstock) Whether to allow the tooltip to render outside * the chart's SVG element box. By default (`false`), the tooltip is * rendered within the chart's SVG element, which results in the tooltip * being aligned inside the chart area. For small charts, this may result in * clipping or overlapping. When `true`, a separate SVG element is created * and overlaid on the page, allowing the tooltip to be aligned inside the * page itself. */ outside?: boolean; /** * (Highcharts, Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts, Highstock) The HTML of the point's line in the tooltip. * Variables are enclosed by curly brackets. Available variables are * point.x, point.y, series. name and series.color and other properties on * the same form. Furthermore, `point.y` can be extended by the * `tooltip.valuePrefix` and `tooltip.valueSuffix` variables. This can also * be overridden for each series, which makes it a good hook for displaying * units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts, Highstock) A callback function for formatting the HTML * output for a single point in the tooltip. Like the `pointFormat` string, * but with more flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts, Highstock) How many decimals to show in each series' y * value. This is overridable in each series' tooltip options object. The * default is to preserve all decimals. */ valueDecimals?: number; /** * (Highcharts, Highstock) A string to prepend to each series' y value. * Overridable in each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts, Highstock) A string to append to each series' y value. * Overridable in each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotScatterZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts, Highstock, Highmaps, Gantt) Keyboard navigation for a series */ export interface PlotSeriesAccessibilityKeyboardNavigationOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Enable/disable keyboard * navigation support for a specific series. */ enabled?: boolean; } /** * (Highcharts, Highstock, Highmaps, Gantt) Accessibility options for a series. * Requires the accessibility module. */ export interface PlotSeriesAccessibilityOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Provide a description of the * series, announced to screen readers. */ description?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Enable/disable accessibility * functionality for a specific series. */ enabled?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Expose only the series element * to screen readers, not its points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotSeriesAccessibilityKeyboardNavigationOptions); /** * (Highcharts, Highstock, Highmaps, Gantt) Formatter function to use * instead of the default for point descriptions. Same as * `accessibility.pointDescriptionFormatter`, but for a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts, Highstock, Highmaps, Gantt) Enable or disable the initial * animation when a series is displayed. The animation can also be set as a * configuration object. Please note that this option only applies to the * initial animation of the series itself. For other animations, see * chart.animation and the animation parameter under the API methods. The * following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotSeriesAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotSeriesConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotSeriesConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotSeriesConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotSeriesConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotSeriesConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotSeriesConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotSeriesConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotSeriesDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts, Highstock, Highmaps, Gantt) Options for the drag handles. */ export interface PlotSeriesDragDropDragHandleOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) The class name of the drag * handles. Defaults to `highcharts-drag-handle`. */ className?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) The fill color of the drag * handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Highmaps, Gantt) The mouse cursor to use for the * drag handles. By default this is intelligently switching between * `ew-resize` and `ns-resize` depending on the direction the point is being * dragged. */ cursor?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) The line color of the drag * handles. */ lineColor?: ColorString; /** * (Highcharts, Highstock, Highmaps, Gantt) The line width for the drag * handles. */ lineWidth?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) Function to define the SVG path * to use for the drag handles. Takes the point as argument. Should return * an SVG path in array format. The SVG path is automatically positioned on * the point. */ pathFormatter?: Function; /** * (Highcharts, Highstock, Highmaps, Gantt) The z index for the drag * handles. */ zIndex?: number; } /** * (Highcharts, Highstock, Highmaps, Gantt) Style options for the guide box * default state. */ export interface PlotSeriesDragDropGuideBoxDefaultOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) CSS class name of the guide box * in this state. Defaults to `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Highmaps, Gantt) Guide box cursor. */ cursor?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Color of the border around the * guide box. */ lineColor?: ColorString; /** * (Highcharts, Highstock, Highmaps, Gantt) Width of the line around the * guide box. */ lineWidth?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts, Highstock, Highmaps, Gantt) Style options for the guide box. The * guide box has one state by default, the `default` state. */ export interface PlotSeriesDragDropGuideBoxOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Style options for the guide box * default state. */ default?: PlotSeriesDragDropGuideBoxDefaultOptions; } /** * (Highcharts, Highstock, Highmaps, Gantt) The draggable-points module allows * points to be moved around or modified in the chart. In addition to the * options mentioned under the `dragDrop` API structure, the module fires three * events, point.dragStart, point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotSeriesDragDropOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Enable dragging in the X * dimension. */ draggableX?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Enable dragging in the Y * dimension. Note that this is not supported for TreeGrid axes (the default * axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Options for the drag handles. */ dragHandle?: PlotSeriesDragDropDragHandleOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) Set the maximum X value the * points can be moved to. */ dragMaxX?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) Set the maximum Y value the * points can be moved to. */ dragMaxY?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) Set the minimum X value the * points can be moved to. */ dragMinX?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) Set the minimum Y value the * points can be moved to. */ dragMinY?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The X precision value to drag to * for this series. Set to 0 to disable. By default this is disabled, except * for category axes, where the default is 1. */ dragPrecisionX?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The Y precision value to drag to * for this series. Set to 0 to disable. By default this is disabled, except * for category axes, where the default is 1. */ dragPrecisionY?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The amount of pixels to drag the * pointer before it counts as a drag operation. This prevents drag/drop to * fire when just clicking or selecting points. */ dragSensitivity?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) Group the points by a property. * Points with the same property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Style options for the guide box. * The guide box has one state by default, the `default` state. */ guideBox?: (PlotSeriesDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts, Highstock, Highmaps, Gantt) Update points as they are * dragged. If false, a guide box is drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Highmaps, Gantt) General event handlers for the * series items. These event hooks can also be attached to the series at run * time using the `Highcharts.addEvent` function. */ export interface PlotSeriesEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts, Highstock, Highmaps, Gantt) Fires when the checkbox next to * the series' name in the legend is clicked. One parameter, `event`, is * passed to the function. The state of the checkbox is found by * `event.checked`. The checked item is found by `event.item`. Return * `false` to prevent the default action which is to toggle the select state * of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts, Highstock, Highmaps, Gantt) Fires when the series is * clicked. One parameter, `event`, is passed to the function, containing * common event information. Additionally, `event.point` holds a pointer to * the nearest point on the graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts, Highstock, Highmaps, Gantt) Fires when the series is hidden * after chart generation time, either by clicking the legend item or by * calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts, Highstock, Highmaps, Gantt) Fires when the legend item * belonging to the series is clicked. One parameter, `event`, is passed to * the function. The default action is to toggle the visibility of the * series. This can be prevented by returning `false` or calling * `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts, Highstock, Highmaps, Gantt) Fires when the mouse leaves the * graph. One parameter, `event`, is passed to the function, containing * common event information. If the stickyTracking option is true, * `mouseOut` doesn't happen before the mouse enters another graph or leaves * the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts, Highstock, Highmaps, Gantt) Fires when the mouse enters the * graph. One parameter, `event`, is passed to the function, containing * common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts, Highstock, Highmaps, Gantt) Fires when the series is shown * after chart generation time, either by clicking the legend item or by * calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotSeriesLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotSeriesLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotSeriesLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotSeriesLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotSeriesLastVisiblePriceLabelOptions; } /** * (Highcharts, Highstock, Highmaps, Gantt) Options for the point markers of * line-like series. Properties like `fillColor`, `lineColor` and `lineWidth` * define the visual appearance of the markers. Other series types, like column * series, don't have markers, but have visual options on the series level * instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotSeriesMarkerOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Enable or disable the point * marker. If `undefined`, the markers are hidden when the data is dense, * and shown for more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) The threshold for how dense the * point markers should be before they are hidden, given that `enabled` is * not defined. The number indicates the horizontal distance between the two * closest points in the series, as multiples of the `marker.radius`. In * other words, the default value of 2 means points are hidden if * overlapping horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The fill color of the point * marker. When `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Highmaps, Gantt) Image markers only. Set the * image width explicitly. When using this option, a `width` must also be * set. */ height?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The color of the point marker's * outline. When `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock, Highmaps, Gantt) The width of the point marker's * outline. */ lineWidth?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) States for a single point * marker. */ states?: PlotSeriesMarkerStatesOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) A predefined shape or symbol for * the marker. When undefined, the symbol is pulled from options.symbols. * Other possible values are "circle", "square", "diamond", "triangle" and * "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Image markers only. Set the * image width explicitly. When using this option, a `height` must also be * set. */ width?: number; } /** * (Highcharts, Highstock, Highmaps, Gantt) Animation when hovering over the * marker. */ export interface PlotSeriesMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock, Highmaps, Gantt) The hover state for a single point * marker. */ export interface PlotSeriesMarkerStatesHoverOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Animation when hovering over the * marker. */ animation?: (boolean|AnimationOptionsObject|PlotSeriesMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock, Highmaps, Gantt) Enable or disable the point * marker. */ enabled?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) The fill color of the marker in * hover state. When `undefined`, the series' or point's fillColor for * normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Highmaps, Gantt) The color of the point marker's * outline. When `undefined`, the series' or point's lineColor for normal * state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock, Highmaps, Gantt) The width of the point marker's * outline. When `undefined`, the series' or point's lineWidth for normal * state is used. */ lineWidth?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The additional line width for a * hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The radius of the point marker. * In hover state, it defaults to the normal state's radius + 2 as per the * radiusPlus option. */ radius?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The number of pixels to increase * the radius of the hovered point. */ radiusPlus?: number; } export interface PlotSeriesMarkerStatesInactiveOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock, Highmaps, Gantt) The normal state of a single point * marker. Currently only used for setting animation when returning to normal * state from hover. */ export interface PlotSeriesMarkerStatesNormalOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Animation when returning to * normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock, Highmaps, Gantt) States for a single point marker. */ export interface PlotSeriesMarkerStatesOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) The hover state for a single * point marker. */ hover?: PlotSeriesMarkerStatesHoverOptions; inactive?: PlotSeriesMarkerStatesInactiveOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) The normal state of a single * point marker. Currently only used for setting animation when returning to * normal state from hover. */ normal?: PlotSeriesMarkerStatesNormalOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) The appearance of the point * marker when selected. In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotSeriesMarkerStatesSelectOptions; } /** * (Highcharts, Highstock, Highmaps, Gantt) The appearance of the point marker * when selected. In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ export interface PlotSeriesMarkerStatesSelectOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Enable or disable visible * feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) The fill color of the point * marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Highmaps, Gantt) The color of the point marker's * outline. When `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock, Highmaps, Gantt) The width of the point marker's * outline. */ lineWidth?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The radius of the point marker. * In hover state, it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts, Highstock, Highmaps, Gantt) General options for all series * types. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `line` series are defined in plotOptions.line. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotSeriesOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Accessibility options for a * series. Requires the accessibility module. */ accessibility?: (object|PlotSeriesAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Allow this series' points to be * selected by clicking on the graphic (columns, point markers, pie slices, * map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Enable or disable the initial * animation when a series is displayed. The animation can also be set as a * configuration object. Please note that this option only applies to the * initial animation of the series itself. For other animations, see * chart.animation and the animation parameter under the API methods. The * following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotSeriesAnimationOptions); /** * (Highcharts, Highstock, Highmaps, Gantt) For some series, there is a * limit that shuts down initial animation by default when the total number * of points in the chart is too high. For example, for a column chart and * its derivatives, animation does not run if there is more than 250 points * totally. To disable this cap, set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) Sets the color blending in the * boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts, Highstock, Highmaps, Gantt) Set the point threshold for when * a series should enter boost mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) An additional class name to * apply to the series' graphical elements. This option does not replace * default class names of the graphical element. */ className?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Disable this option to allow * series rendering in the whole plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) The main color of the series. In * line type series it applies to the line and the point markers unless * otherwise specified. In bar type series it applies to the bars unless a * color is specified per point. The default value is pulled from the * `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Styled mode only. A specific * color index to use for the series, so its graphic representations are * given the class name `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotSeriesConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) You can set the cursor to * "pointer" if you have click events attached to the series, to signal to * the user that the points and lines can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highcharts, Highstock, Highmaps, Gantt) A name for the dash style to use * for the graph, or for some series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotSeriesDataGroupingOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) Options for the series data * labels, appearing next to each data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts, Highstock, Highmaps, Gantt) Requires the Accessibility * module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) The draggable-points module * allows points to be moved around or modified in the chart. In addition to * the options mentioned under the `dragDrop` API structure, the module * fires three events, point.dragStart, point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotSeriesDragDropOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) Enable or disable the mouse * tracking for a specific series. This includes point tooltips and click * events on graphs and points. For large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) General event handlers for the * series items. These event hooks can also be attached to the series at run * time using the `Highcharts.addEvent` function. */ events?: PlotSeriesEventsOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) By default, series are exposed * to screen readers as regions. By enabling this option, the series element * itself will be exposed in the same way as the data points. This is useful * if the series is not used as a grouping entity in the chart, but you * still want to attach a description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Determines whether the series * should look for the nearest point in both dimensions or just the * x-dimension when hovering the series. Defaults to `'xy'` for scatter * series and `'x'` for most other series. If the data has duplicate * x-values, it is recommended to set this to `'xy'` to allow hovering over * all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Export-data module required. * When set to `false` will prevent the series data from being included in * any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts, Highstock, Highmaps, Gantt) An array specifying which option * maps to which key in the data point array. This makes it convenient to * work with unstructured data arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotSeriesLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotSeriesLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotSeriesLastVisiblePriceOptions; /** * (Highcharts, Highstock) The line cap used for line ends and line joins on * the graph. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Options for the point markers of * line-like series. Properties like `fillColor`, `lineColor` and * `lineWidth` define the visual appearance of the markers. Other series * types, like column series, don't have markers, but have visual options on * the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotSeriesMarkerOptions; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) The color for the parts of the * graph or points that are below the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Highmaps, Gantt) Opacity of a series parts: line, * fill (e.g. area) and dataLabels. */ opacity?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) Properties for each single * point. */ point?: PlotSeriesPointOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) Same as * accessibility.pointDescriptionFormatter, but for an individual series. * Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, `pointInterval` defines the interval of the x values. For * example, if a series contains one value every decade starting from year * 0, set `pointInterval` to `10`. In true `datetime` axes, the * `pointInterval` is set in milliseconds. * * It can be also be combined with `pointIntervalUnit` to draw irregular * time intervals. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointInterval?: number; /** * (Highcharts, Highstock, Gantt) On datetime series, this allows for * setting the pointInterval to irregular time units, `day`, `month` and * `year`. A day is usually the same as 24 hours, but `pointIntervalUnit` * also takes the DST crossover into consideration when dealing with local * time. Combine this option with `pointInterval` to draw weeks, quarters, 6 * months, 10 years etc. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointIntervalUnit?: OptionsPointIntervalUnitValue; /** * (Highcharts, Highstock, Gantt) Possible values: `"on"`, `"between"`, * `number`. * * In a column chart, when pointPlacement is `"on"`, the point will not * create any padding of the X axis. In a polar column chart this means that * the first column points directly north. If the pointPlacement is * `"between"`, the columns will be laid out between ticks. This is useful * for example for visualising an amount between two points in time or in a * certain sector of a polar chart. * * Since Highcharts 3.0.2, the point placement can also be numeric, where 0 * is on the axis value, -0.5 is between this value and the previous, and * 0.5 is between this value and the next. Unlike the textual options, * numeric point placement options won't affect axis padding. * * Note that pointPlacement needs a pointRange to work. For column series * this is computed, but for line-type series it needs to be set. * * For the `xrange` series type and gantt charts, if the Y axis is a * category axis, the `pointPlacement` applies to the Y axis rather than the * (typically datetime) X axis. * * Defaults to `undefined` in cartesian charts, `"between"` in polar charts. */ pointPlacement?: (number|string); /** * (Highstock) The width of each point on the x axis. For example in a * column chart with one value each day, the pointRange would be 1 day (= 24 * * 3600 * * * 1000 milliseconds). This is normally computed automatically, but this * option can be used to override the automatic value. */ pointRange?: number; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, pointStart defines on what value to start. For example, if a * series contains one yearly value starting from 1945, set pointStart to * 1945. */ pointStart?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to select the series * initially. If `showCheckbox` is true, the checkbox next to the series * name in the legend will be checked for a selected series. */ selected?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to apply a drop shadow * to the graph line. Since 2.3 the shadow can be an object configuration * containing `color`, `offsetX`, `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highcharts, Highstock, Highmaps, Gantt) If true, a checkbox is displayed * next to the legend item to allow selecting the series. The state of the * checkbox is determined by the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to display this * particular series or series type in the legend. The default value is * `true` for standalone series, `false` for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) If set to `true`, the * accessibility module will skip past the points in this series for * keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; /** * (Highcharts, Highstock) Whether to stack the values of each series on top * of each other. Possible values are `undefined` to disable, `"normal"` to * stack by value or `"percent"`. When stacking is enabled, data must be * sorted in ascending X order. A special stacking option is with the * streamgraph series type, where the stacking option is set to `"stream"`. * The second one is `"overlap"`, which only applies to waterfall series. */ stacking?: OptionsStackingValue; states?: PlotSeriesStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highcharts, Highstock, Highmaps, Gantt) Sticky tracking of mouse events. * When true, the `mouseOut` event on a series isn't triggered until the * mouse moves over another series, or out of the plot area. When false, the * `mouseOut` event on a series is triggered when the mouse leaves the area * around the series' graph or markers. This also implies the tooltip when * not shared. When `stickyTracking` is false and `tooltip.shared` is false, * the tooltip will be hidden when moving the mouse between series. Defaults * to true for line and area type series, but to false for columns, pies * etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) A configuration object for the * tooltip rendering of each single series. Properties are inherited from * tooltip, but only the following properties can be defined on a series * level. */ tooltip?: PlotSeriesTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) Set the initial visibility of * the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotSeriesZonesOptions>; } /** * (Highcharts, Highstock, Highmaps, Gantt) Events for each single point. */ export interface PlotSeriesPointEventsOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Fires when a point is clicked. * One parameter, `event`, is passed to the function, containing common * event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Highmaps, Gantt) Callback that fires while * dragging a point. The mouse event is passed in as parameter. The original * data can be accessed from `e.origin`, and the new point values can be * accessed from `e.newPoints`. If there is only a single point being * updated, it can be accessed from `e.newPoint` for simplicity, and its ID * can be accessed from `e.newPointId`. The `this` context is the point * being dragged. To stop the default drag action, return false. See drag * and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Highmaps, Gantt) Callback that fires when * starting to drag a point. The mouse event object is passed in as an * argument. If a drag handle is used, `e.updateProp` is set to the data * property being dragged. The `this` context is the point. See drag and * drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Highmaps, Gantt) Callback that fires when the * point is dropped. The parameters passed are the same as for drag. To stop * the default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Highmaps, Gantt) Fires when the mouse leaves the * area close to the point. One parameter, `event`, is passed to the * function, containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Highmaps, Gantt) Fires when the mouse enters the * area close to the point. One parameter, `event`, is passed to the * function, containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Highmaps, Gantt) Fires when the point is removed * using the `.remove()` method. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Highmaps, Gantt) Fires when the point is selected * either programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Highmaps, Gantt) Fires when the point is * unselected either programmatically or following a click on the point. One * parameter, `event`, is passed to the function. Returning `false` cancels * the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Highmaps, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts, Highstock, Highmaps, Gantt) Properties for each single point. */ export interface PlotSeriesPointOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Events for each single point. */ events?: PlotSeriesPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotSeriesStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotSeriesStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotSeriesStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotSeriesStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotSeriesStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotSeriesStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotSeriesStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotSeriesStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotSeriesStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotSeriesStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotSeriesStatesHoverMarkerStatesHoverOptions; inactive?: PlotSeriesStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotSeriesStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotSeriesStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotSeriesStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts, Highstock, Highmaps, Gantt) Options for the hovered series. * These settings override the normal state options when a series is moused over * or touched. */ export interface PlotSeriesStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotSeriesStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Highmaps, Gantt) Enable separate styles for the * hovered series to visualize that the user hovers either the series itself * or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotSeriesStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotSeriesStatesHoverMarkerOptions; } export interface PlotSeriesStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts, Highstock, Highmaps, Gantt) The opposite state of a hover for * series. */ export interface PlotSeriesStatesInactiveOptions { animation?: PlotSeriesStatesInactiveAnimationOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) Opacity of series elements * (dataLabels, line, area). */ opacity?: number; } /** * (Highcharts, Highstock, Highmaps, Gantt) The normal state of a series, or for * point items in column, pie and similar series. Currently only used for * setting animation when returning to normal state from hover. */ export interface PlotSeriesStatesNormalOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Animation when returning to * normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotSeriesStatesOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Options for the hovered series. * These settings override the normal state options when a series is moused * over or touched. */ hover?: PlotSeriesStatesHoverOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) The opposite state of a hover * for series. */ inactive?: PlotSeriesStatesInactiveOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) The normal state of a series, or * for point items in column, pie and similar series. Currently only used * for setting animation when returning to normal state from hover. */ normal?: PlotSeriesStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotSeriesStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotSeriesStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotSeriesStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotSeriesStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotSeriesStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotSeriesStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotSeriesStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotSeriesStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotSeriesStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotSeriesStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotSeriesStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotSeriesStatesSelectMarkerStatesHoverOptions; inactive?: PlotSeriesStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotSeriesStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotSeriesStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotSeriesStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotSeriesStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotSeriesStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotSeriesStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotSeriesStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotSeriesTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts, Highstock, Highmaps, Gantt) A configuration object for the * tooltip rendering of each single series. Properties are inherited from * tooltip, but only the following properties can be defined on a series level. */ export interface PlotSeriesTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotSeriesTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highcharts, Highstock, Highmaps, Gantt) Whether the tooltip should * follow the mouse as it moves across columns, pie slices and other point * types with an extent. By default it behaves this way for pie, polygon, * map, sankey and wordcloud series by override in the `plotOptions` for * those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether the tooltip should * update as the finger moves on a touch device. If this is `true` and * chart.panning is set,`followTouchMove` will take over one-finger touches, * so the user needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) A string to append to the * tooltip format. */ footerFormat?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) The HTML of the tooltip header * line. Variables are enclosed by curly brackets. Available variables are * `point.key`, `series.name`, `series.color` and other members from the * `point` and `series` objects. The `point.key` variable contains the * category name, x value or datetime string depending on the type of axis. * For datetime axes, the `point.key` date format can be set using * `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) The name of a symbol to use for * the border around the tooltip header. Applies only when tooltip.split is * enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts, Highstock, Highmaps, Gantt) The number of milliseconds to * wait until the tooltip is hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The HTML of the null point's * line in the tooltip. Works analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Callback function to format the * text of the tooltip for visible null points. Works analogously to * formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to allow the tooltip to * render outside the chart's SVG element box. By default (`false`), the * tooltip is rendered within the chart's SVG element, which results in the * tooltip being aligned inside the chart area. For small charts, this may * result in clipping or overlapping. When `true`, a separate SVG element is * created and overlaid on the page, allowing the tooltip to be aligned * inside the page itself. */ outside?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Padding inside the tooltip, in * pixels. */ padding?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The HTML of the point's line in * the tooltip. Variables are enclosed by curly brackets. Available * variables are point.x, point.y, series. name and series.color and other * properties on the same form. Furthermore, `point.y` can be extended by * the `tooltip.valuePrefix` and `tooltip.valueSuffix` variables. This can * also be overridden for each series, which makes it a good hook for * displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) A callback function for * formatting the HTML output for a single point in the tooltip. Like the * `pointFormat` string, but with more flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) How many decimals to show in * each series' y value. This is overridable in each series' tooltip options * object. The default is to preserve all decimals. */ valueDecimals?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) A string to prepend to each * series' y value. Overridable in each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) A string to append to each * series' y value. Overridable in each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotSeriesZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotSmaAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotSmaAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotSmaAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotSmaAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotSmaConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotSmaConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotSmaConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotSmaConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotSmaConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotSmaConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotSmaConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotSmaDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotSmaDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotSmaDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotSmaDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotSmaDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotSmaDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotSmaDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotSmaDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotSmaEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotSmaLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotSmaLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotSmaLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotSmaLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotSmaLastVisiblePriceLabelOptions; } /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotSmaMarkerOptions { /** * (Highstock) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highstock) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highstock) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. */ radius?: number; /** * (Highstock) States for a single point marker. */ states?: PlotSmaMarkerStatesOptions; /** * (Highstock) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highstock) Animation when hovering over the marker. */ export interface PlotSmaMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highstock) The hover state for a single point marker. */ export interface PlotSmaMarkerStatesHoverOptions { /** * (Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotSmaMarkerStatesHoverAnimationOptions); /** * (Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highstock) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotSmaMarkerStatesInactiveOptions { /** * (Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highstock) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotSmaMarkerStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highstock) States for a single point marker. */ export interface PlotSmaMarkerStatesOptions { /** * (Highstock) The hover state for a single point marker. */ hover?: PlotSmaMarkerStatesHoverOptions; inactive?: PlotSmaMarkerStatesInactiveOptions; /** * (Highstock) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotSmaMarkerStatesNormalOptions; /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotSmaMarkerStatesSelectOptions; } /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotSmaMarkerStatesSelectOptions { /** * (Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Simple moving average indicator (SMA). This series requires * `linkedTo` option to be set. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `sma` series are defined in plotOptions.sma. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotSmaOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotSmaAccessibilityOptions); /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotSmaAnimationOptions); /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highstock) Whether to compare indicator to the main series values or * indicator values. */ compareToMain?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotSmaConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotSmaDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotSmaDragDropOptions; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotSmaEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotSmaLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotSmaLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotSmaLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The main series ID that indicator will be * based on. Required for this indicator. */ linkedTo?: string; /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotSmaMarkerOptions; /** * (Highstock) The name of the series as shown in the legend, tooltip etc. * If not set, it will be based on a technical indicator type and default * params. */ name?: string; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Paramters used in calculation of regression series' points. */ params?: PlotSmaParamsOptions; /** * (Highstock) Properties for each single point. */ point?: PlotSmaPointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotSmaStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotSmaTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotSmaZonesOptions>; } /** * (Highstock) Paramters used in calculation of regression series' points. */ export interface PlotSmaParamsOptions { /** * (Highstock) The point index which indicator calculations will base. For * example using OHLC data, index=2 means the indicator will be calculated * using Low values. */ index?: number; /** * (Highstock) The base period for indicator calculations. This is the * number of data points which are taken into account for the indicator * calculations. */ period?: number; } /** * (Highstock) Events for each single point. */ export interface PlotSmaPointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotSmaPointOptions { /** * (Highstock) Events for each single point. */ events?: PlotSmaPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotSmaStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotSmaStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotSmaStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotSmaStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotSmaStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotSmaStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotSmaStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotSmaStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotSmaStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotSmaStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotSmaStatesHoverMarkerStatesHoverOptions; inactive?: PlotSmaStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotSmaStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotSmaStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotSmaStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotSmaStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotSmaStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotSmaStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotSmaStatesHoverMarkerOptions; } export interface PlotSmaStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotSmaStatesInactiveOptions { animation?: PlotSmaStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotSmaStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotSmaStatesOptions { /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotSmaStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotSmaStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotSmaStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotSmaStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotSmaStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotSmaStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotSmaStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotSmaStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotSmaStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotSmaStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotSmaStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotSmaStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotSmaStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotSmaStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotSmaStatesSelectMarkerStatesHoverOptions; inactive?: PlotSmaStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotSmaStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotSmaStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotSmaStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotSmaStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotSmaStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotSmaStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotSmaStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotSmaTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotSmaTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotSmaTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) Number of decimals in indicator series. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotSmaZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts) Keyboard navigation for a series */ export interface PlotSolidgaugeAccessibilityKeyboardNavigationOptions { /** * (Highcharts) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highcharts) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotSolidgaugeAccessibilityOptions { /** * (Highcharts) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highcharts) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highcharts) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotSolidgaugeAccessibilityKeyboardNavigationOptions); /** * (Highcharts) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotSolidgaugeAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotSolidgaugeConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotSolidgaugeConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotSolidgaugeConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotSolidgaugeConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotSolidgaugeConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotSolidgaugeConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotSolidgaugeConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotSolidgaugeDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts) Options for the drag handles. */ export interface PlotSolidgaugeDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface PlotSolidgaugeDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotSolidgaugeDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: PlotSolidgaugeDragDropGuideBoxDefaultOptions; } /** * (Highcharts) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotSolidgaugeDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: PlotSolidgaugeDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotSolidgaugeDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotSolidgaugeEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotSolidgaugeLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotSolidgaugeLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotSolidgaugeLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotSolidgaugeLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotSolidgaugeLastVisiblePriceLabelOptions; } /** * (Highcharts) A solid gauge is a circular gauge where the value is indicated * by a filled arc, and the color of the arc may variate with the value. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `solidgauge` series are defined in plotOptions.solidgauge. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotSolidgaugeOptions { /** * (Highcharts) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotSolidgaugeAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highcharts) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotSolidgaugeAnimationOptions); /** * (Highcharts) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highcharts) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highcharts) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts) Whether to give each point an individual color. */ colorByPoint?: boolean; /** * (Highcharts) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotSolidgaugeConnectorsOptions; /** * (Highcharts) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotSolidgaugeDataGroupingOptions; /** * (Highcharts) Data labels for the gauge. For gauges, the data labels are * enabled by default and shown in a bordered box below the point. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotSolidgaugeDragDropOptions; /** * (Highcharts) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotSolidgaugeEventsOptions; /** * (Highcharts) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts) Export-data module required. When set to `false` will * prevent the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts) An array specifying which option maps to which key in the * data point array. This makes it convenient to work with unstructured data * arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotSolidgaugeLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotSolidgaugeLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotSolidgaugeLastVisiblePriceOptions; /** * (Highcharts) Whether the strokes of the solid gauge should be `round` or * `square`. */ linecap?: OptionsLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highcharts) Allow the gauge to overshoot the end of the perimeter axis * by this many degrees. Say if the gauge axis goes from 0 to 60, a value of * 100, or 1000, will show 5 degrees beyond the end of the axis when this * option is set to 5. */ overshoot?: number; /** * (Highcharts) Properties for each single point. */ point?: PlotSolidgaugePointOptions; /** * (Highcharts) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, `pointInterval` defines the interval of the x values. For * example, if a series contains one value every decade starting from year * 0, set `pointInterval` to `10`. In true `datetime` axes, the * `pointInterval` is set in milliseconds. * * It can be also be combined with `pointIntervalUnit` to draw irregular * time intervals. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointInterval?: number; /** * (Highcharts, Highstock, Gantt) On datetime series, this allows for * setting the pointInterval to irregular time units, `day`, `month` and * `year`. A day is usually the same as 24 hours, but `pointIntervalUnit` * also takes the DST crossover into consideration when dealing with local * time. Combine this option with `pointInterval` to draw weeks, quarters, 6 * months, 10 years etc. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointIntervalUnit?: OptionsPointIntervalUnitValue; /** * (Highstock) The width of each point on the x axis. For example in a * column chart with one value each day, the pointRange would be 1 day (= 24 * * 3600 * * * 1000 milliseconds). This is normally computed automatically, but this * option can be used to override the automatic value. */ pointRange?: number; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, pointStart defines on what value to start. For example, if a * series contains one yearly value starting from 1945, set pointStart to * 1945. */ pointStart?: number; /** * (Highcharts) Wether to draw rounded edges on the gauge. */ rounded?: boolean; /** * (Highcharts) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highcharts) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts) Whether to display this particular series or series type in * the legend. Defaults to false for gauge series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts) If set to `true`, the accessibility module will skip past * the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts) The threshold or base level for the gauge. */ threshold?: number; /** * (Highcharts) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotSolidgaugeTooltipOptions; /** * (Highstock) The parameter allows setting line series type and use OHLC * indicators. Data in OHLC format is required. */ useOhlcData?: boolean; /** * (Highcharts) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; } /** * (Highcharts) Events for each single point. */ export interface PlotSolidgaugePointEventsOptions { /** * (Highcharts) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts) Callback that fires when the point is dropped. The * parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts) Fires when the point is removed using the `.remove()` * method. One parameter, `event`, is passed to the function. Returning * `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts) Fires when the point is unselected either programmatically * or following a click on the point. One parameter, `event`, is passed to * the function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) Properties for each single point. */ export interface PlotSolidgaugePointOptions { /** * (Highcharts) Events for each single point. */ events?: PlotSolidgaugePointEventsOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotSolidgaugeTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotSolidgaugeTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotSolidgaugeTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highcharts) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts) The name of a symbol to use for the border around the * tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highcharts) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts) How many decimals to show in each series' y value. This is * overridable in each series' tooltip options object. The default is to * preserve all decimals. */ valueDecimals?: number; /** * (Highcharts) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) Keyboard navigation for a series */ export interface PlotSplineAccessibilityKeyboardNavigationOptions { /** * (Highcharts, Highstock) Enable/disable keyboard navigation support for a * specific series. */ enabled?: boolean; } /** * (Highcharts, Highstock) Accessibility options for a series. Requires the * accessibility module. */ export interface PlotSplineAccessibilityOptions { /** * (Highcharts, Highstock) Provide a description of the series, announced to * screen readers. */ description?: string; /** * (Highcharts, Highstock) Enable/disable accessibility functionality for a * specific series. */ enabled?: boolean; /** * (Highcharts, Highstock) Expose only the series element to screen readers, * not its points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts, Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotSplineAccessibilityKeyboardNavigationOptions); /** * (Highcharts, Highstock) Formatter function to use instead of the default * for point descriptions. Same as * `accessibility.pointDescriptionFormatter`, but for a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts, Highstock) Enable or disable the initial animation when a series * is displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotSplineAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotSplineConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotSplineConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotSplineConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotSplineConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotSplineConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotSplineConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotSplineConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotSplineDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts, Highstock) Options for the drag handles. */ export interface PlotSplineDragDropDragHandleOptions { /** * (Highcharts, Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts, Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The mouse cursor to use for the drag handles. By * default this is intelligently switching between `ew-resize` and * `ns-resize` depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts, Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts, Highstock) Function to define the SVG path to use for the * drag handles. Takes the point as argument. Should return an SVG path in * array format. The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts, Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box default state. */ export interface PlotSplineDragDropGuideBoxDefaultOptions { /** * (Highcharts, Highstock) CSS class name of the guide box in this state. * Defaults to `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts, Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Guide box cursor. */ cursor?: string; /** * (Highcharts, Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts, Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts, Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box. The guide box has * one state by default, the `default` state. */ export interface PlotSplineDragDropGuideBoxOptions { /** * (Highcharts, Highstock) Style options for the guide box default state. */ default?: PlotSplineDragDropGuideBoxDefaultOptions; } /** * (Highcharts, Highstock) The draggable-points module allows points to be moved * around or modified in the chart. In addition to the options mentioned under * the `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotSplineDragDropOptions { /** * (Highcharts, Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts, Highstock) Enable dragging in the Y dimension. Note that * this is not supported for TreeGrid axes (the default axis type in Gantt * charts). */ draggableY?: boolean; /** * (Highcharts, Highstock) Options for the drag handles. */ dragHandle?: PlotSplineDragDropDragHandleOptions; /** * (Highcharts, Highstock) Set the maximum X value the points can be moved * to. */ dragMaxX?: number; /** * (Highcharts, Highstock) Set the maximum Y value the points can be moved * to. */ dragMaxY?: number; /** * (Highcharts, Highstock) Set the minimum X value the points can be moved * to. */ dragMinX?: number; /** * (Highcharts, Highstock) Set the minimum Y value the points can be moved * to. */ dragMinY?: number; /** * (Highcharts, Highstock) The X precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionX?: number; /** * (Highcharts, Highstock) The Y precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionY?: number; /** * (Highcharts, Highstock) The amount of pixels to drag the pointer before * it counts as a drag operation. This prevents drag/drop to fire when just * clicking or selecting points. */ dragSensitivity?: number; /** * (Highcharts, Highstock) Group the points by a property. Points with the * same property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts, Highstock) Style options for the guide box. The guide box * has one state by default, the `default` state. */ guideBox?: (PlotSplineDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts, Highstock) Update points as they are dragged. If false, a * guide box is drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock) General event handlers for the series items. These * event hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotSplineEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts, Highstock) Fires when the checkbox next to the series' name * in the legend is clicked. One parameter, `event`, is passed to the * function. The state of the checkbox is found by `event.checked`. The * checked item is found by `event.item`. Return `false` to prevent the * default action which is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is clicked. One parameter, * `event`, is passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is hidden after chart * generation time, either by clicking the legend item or by calling * `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts, Highstock) Fires when the legend item belonging to the * series is clicked. One parameter, `event`, is passed to the function. The * default action is to toggle the visibility of the series. This can be * prevented by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse leaves the graph. One * parameter, `event`, is passed to the function, containing common event * information. If the stickyTracking option is true, `mouseOut` doesn't * happen before the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse enters the graph. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is shown after chart * generation time, either by clicking the legend item or by calling * `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotSplineLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotSplineLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotSplineLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotSplineLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotSplineLastVisiblePriceLabelOptions; } /** * (Highcharts, Highstock) Options for the point markers of line-like series. * Properties like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't have * markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotSplineMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotSplineMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotSplineMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotSplineMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotSplineMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotSplineMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotSplineMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotSplineMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotSplineMarkerStatesHoverOptions; inactive?: PlotSplineMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotSplineMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotSplineMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotSplineMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts, Highstock) A spline series is a special type of line series, * where the segments between the data points are smoothed. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `spline` series are defined in plotOptions.spline. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotSplineOptions { /** * (Highcharts, Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotSplineAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highcharts, Highstock) Allow this series' points to be selected by * clicking on the graphic (columns, point markers, pie slices, map areas * etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts, Highstock) Enable or disable the initial animation when a * series is displayed. The animation can also be set as a configuration * object. Please note that this option only applies to the initial * animation of the series itself. For other animations, see chart.animation * and the animation parameter under the API methods. The following * properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotSplineAnimationOptions); /** * (Highcharts, Highstock) For some series, there is a limit that shuts down * initial animation by default when the total number of points in the chart * is too high. For example, for a column chart and its derivatives, * animation does not run if there is more than 250 points totally. To * disable this cap, set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highcharts, Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts, Highstock) Set the point threshold for when a series should * enter boost mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highcharts, Highstock) An additional class name to apply to the series' * graphical elements. This option does not replace default class names of * the graphical element. */ className?: string; /** * (Highcharts, Highstock) Disable this option to allow series rendering in * the whole plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts, Highstock) The main color of the series. In line type series * it applies to the line and the point markers unless otherwise specified. * In bar type series it applies to the bars unless a color is specified per * point. The default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts, Highstock) Styled mode only. A specific color index to use * for the series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotSplineConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highcharts, Highstock) You can set the cursor to "pointer" if you have * click events attached to the series, to signal to the user that the * points and lines can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highcharts, Highstock) A name for the dash style to use for the graph, * or for some series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotSplineDataGroupingOptions; /** * (Highcharts, Highstock) Options for the series data labels, appearing * next to each data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts, Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts, Highstock) The draggable-points module allows points to be * moved around or modified in the chart. In addition to the options * mentioned under the `dragDrop` API structure, the module fires three * events, point.dragStart, point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotSplineDragDropOptions; /** * (Highcharts, Highstock) Enable or disable the mouse tracking for a * specific series. This includes point tooltips and click events on graphs * and points. For large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts, Highstock) General event handlers for the series items. * These event hooks can also be attached to the series at run time using * the `Highcharts.addEvent` function. */ events?: PlotSplineEventsOptions; /** * (Highcharts, Highstock) By default, series are exposed to screen readers * as regions. By enabling this option, the series element itself will be * exposed in the same way as the data points. This is useful if the series * is not used as a grouping entity in the chart, but you still want to * attach a description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highcharts, Highstock) Determines whether the series should look for the * nearest point in both dimensions or just the x-dimension when hovering * the series. Defaults to `'xy'` for scatter series and `'x'` for most * other series. If the data has duplicate x-values, it is recommended to * set this to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highcharts, Highstock) Export-data module required. When set to `false` * will prevent the series data from being included in any form of data * export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts, Highstock) An array specifying which option maps to which * key in the data point array. This makes it convenient to work with * unstructured data arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotSplineLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotSplineLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotSplineLastVisiblePriceOptions; /** * (Highcharts, Highstock) The line cap used for line ends and line joins on * the graph. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts, Highstock) Options for the point markers of line-like * series. Properties like `fillColor`, `lineColor` and `lineWidth` define * the visual appearance of the markers. Other series types, like column * series, don't have markers, but have visual options on the series level * instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotSplineMarkerOptions; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts, Highstock) The color for the parts of the graph or points * that are below the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Opacity of a series parts: line, fill (e.g. area) * and dataLabels. */ opacity?: number; /** * (Highcharts, Highstock) Properties for each single point. */ point?: PlotSplinePointOptions; /** * (Highcharts, Highstock) Same as accessibility.pointDescriptionFormatter, * but for an individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, `pointInterval` defines the interval of the x values. For * example, if a series contains one value every decade starting from year * 0, set `pointInterval` to `10`. In true `datetime` axes, the * `pointInterval` is set in milliseconds. * * It can be also be combined with `pointIntervalUnit` to draw irregular * time intervals. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointInterval?: number; /** * (Highcharts, Highstock, Gantt) On datetime series, this allows for * setting the pointInterval to irregular time units, `day`, `month` and * `year`. A day is usually the same as 24 hours, but `pointIntervalUnit` * also takes the DST crossover into consideration when dealing with local * time. Combine this option with `pointInterval` to draw weeks, quarters, 6 * months, 10 years etc. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointIntervalUnit?: OptionsPointIntervalUnitValue; /** * (Highcharts, Highstock, Gantt) Possible values: `"on"`, `"between"`, * `number`. * * In a column chart, when pointPlacement is `"on"`, the point will not * create any padding of the X axis. In a polar column chart this means that * the first column points directly north. If the pointPlacement is * `"between"`, the columns will be laid out between ticks. This is useful * for example for visualising an amount between two points in time or in a * certain sector of a polar chart. * * Since Highcharts 3.0.2, the point placement can also be numeric, where 0 * is on the axis value, -0.5 is between this value and the previous, and * 0.5 is between this value and the next. Unlike the textual options, * numeric point placement options won't affect axis padding. * * Note that pointPlacement needs a pointRange to work. For column series * this is computed, but for line-type series it needs to be set. * * For the `xrange` series type and gantt charts, if the Y axis is a * category axis, the `pointPlacement` applies to the Y axis rather than the * (typically datetime) X axis. * * Defaults to `undefined` in cartesian charts, `"between"` in polar charts. */ pointPlacement?: (number|string); /** * (Highstock) The width of each point on the x axis. For example in a * column chart with one value each day, the pointRange would be 1 day (= 24 * * 3600 * * * 1000 milliseconds). This is normally computed automatically, but this * option can be used to override the automatic value. */ pointRange?: number; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, pointStart defines on what value to start. For example, if a * series contains one yearly value starting from 1945, set pointStart to * 1945. */ pointStart?: number; /** * (Highcharts, Highstock) Whether to select the series initially. If * `showCheckbox` is true, the checkbox next to the series name in the * legend will be checked for a selected series. */ selected?: boolean; /** * (Highcharts, Highstock) Whether to apply a drop shadow to the graph line. * Since 2.3 the shadow can be an object configuration containing `color`, * `offsetX`, `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highcharts, Highstock) If true, a checkbox is displayed next to the * legend item to allow selecting the series. The state of the checkbox is * determined by the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts, Highstock) Whether to display this particular series or * series type in the legend. The default value is `true` for standalone * series, `false` for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts, Highstock) If set to `true`, the accessibility module will * skip past the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; /** * (Highcharts, Highstock) Whether to stack the values of each series on top * of each other. Possible values are `undefined` to disable, `"normal"` to * stack by value or `"percent"`. When stacking is enabled, data must be * sorted in ascending X order. A special stacking option is with the * streamgraph series type, where the stacking option is set to `"stream"`. * The second one is `"overlap"`, which only applies to waterfall series. */ stacking?: OptionsStackingValue; states?: PlotSplineStatesOptions; /** * (Highcharts, Highstock) Sticky tracking of mouse events. When true, the * `mouseOut` event on a series isn't triggered until the mouse moves over * another series, or out of the plot area. When false, the `mouseOut` event * on a series is triggered when the mouse leaves the area around the * series' graph or markers. This also implies the tooltip when not shared. * When `stickyTracking` is false and `tooltip.shared` is false, the tooltip * will be hidden when moving the mouse between series. Defaults to true for * line and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highcharts, Highstock) A configuration object for the tooltip rendering * of each single series. Properties are inherited from tooltip, but only * the following properties can be defined on a series level. */ tooltip?: PlotSplineTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highcharts, Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotSplineZonesOptions>; } /** * (Highcharts, Highstock) Events for each single point. */ export interface PlotSplinePointEventsOptions { /** * (Highcharts, Highstock) Fires when a point is clicked. One parameter, * `event`, is passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock) Callback that fires while dragging a point. The * mouse event is passed in as parameter. The original data can be accessed * from `e.origin`, and the new point values can be accessed from * `e.newPoints`. If there is only a single point being updated, it can be * accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock) Callback that fires when starting to drag a * point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock) Callback that fires when the point is dropped. * The parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse leaves the area close to the * point. One parameter, `event`, is passed to the function, containing * common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse enters the area close to the * point. One parameter, `event`, is passed to the function, containing * common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is updated programmatically * through the `.update()` method. One parameter, `event`, is passed to the * function. The new point options can be accessed through `event.options`. * Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts, Highstock) Properties for each single point. */ export interface PlotSplinePointOptions { /** * (Highcharts, Highstock) Events for each single point. */ events?: PlotSplinePointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotSplineStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotSplineStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotSplineStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotSplineStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotSplineStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotSplineStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotSplineStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotSplineStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotSplineStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotSplineStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotSplineStatesHoverMarkerStatesHoverOptions; inactive?: PlotSplineStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotSplineStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotSplineStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotSplineStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts, Highstock) Options for the hovered series. These settings * override the normal state options when a series is moused over or touched. */ export interface PlotSplineStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotSplineStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Enable separate styles for the hovered series to * visualize that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotSplineStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotSplineStatesHoverMarkerOptions; } export interface PlotSplineStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The opposite state of a hover for series. */ export interface PlotSplineStatesInactiveOptions { animation?: PlotSplineStatesInactiveAnimationOptions; /** * (Highcharts, Highstock) Opacity of series elements (dataLabels, line, * area). */ opacity?: number; } /** * (Highcharts, Highstock) The normal state of a series, or for point items in * column, pie and similar series. Currently only used for setting animation * when returning to normal state from hover. */ export interface PlotSplineStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotSplineStatesOptions { /** * (Highcharts, Highstock) Options for the hovered series. These settings * override the normal state options when a series is moused over or * touched. */ hover?: PlotSplineStatesHoverOptions; /** * (Highcharts, Highstock) The opposite state of a hover for series. */ inactive?: PlotSplineStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a series, or for point items * in column, pie and similar series. Currently only used for setting * animation when returning to normal state from hover. */ normal?: PlotSplineStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotSplineStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotSplineStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotSplineStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotSplineStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotSplineStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotSplineStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotSplineStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotSplineStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotSplineStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotSplineStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotSplineStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotSplineStatesSelectMarkerStatesHoverOptions; inactive?: PlotSplineStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotSplineStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotSplineStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotSplineStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotSplineStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotSplineStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotSplineStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotSplineStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotSplineTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts, Highstock) A configuration object for the tooltip rendering of * each single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ export interface PlotSplineTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotSplineTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highcharts, Highstock) Whether the tooltip should follow the mouse as it * moves across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts, Highstock) Whether the tooltip should update as the finger * moves on a touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts, Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts, Highstock) The HTML of the tooltip header line. Variables * are enclosed by curly brackets. Available variables are `point.key`, * `series.name`, `series.color` and other members from the `point` and * `series` objects. The `point.key` variable contains the category name, x * value or datetime string depending on the type of axis. For datetime * axes, the `point.key` date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts, Highstock) The name of a symbol to use for the border around * the tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts, Highstock) The number of milliseconds to wait until the * tooltip is hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts, Highstock) The HTML of the null point's line in the tooltip. * Works analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts, Highstock) Callback function to format the text of the * tooltip for visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts, Highstock) Whether to allow the tooltip to render outside * the chart's SVG element box. By default (`false`), the tooltip is * rendered within the chart's SVG element, which results in the tooltip * being aligned inside the chart area. For small charts, this may result in * clipping or overlapping. When `true`, a separate SVG element is created * and overlaid on the page, allowing the tooltip to be aligned inside the * page itself. */ outside?: boolean; /** * (Highcharts, Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts, Highstock) The HTML of the point's line in the tooltip. * Variables are enclosed by curly brackets. Available variables are * point.x, point.y, series. name and series.color and other properties on * the same form. Furthermore, `point.y` can be extended by the * `tooltip.valuePrefix` and `tooltip.valueSuffix` variables. This can also * be overridden for each series, which makes it a good hook for displaying * units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts, Highstock) A callback function for formatting the HTML * output for a single point in the tooltip. Like the `pointFormat` string, * but with more flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts, Highstock) How many decimals to show in each series' y * value. This is overridable in each series' tooltip options object. The * default is to preserve all decimals. */ valueDecimals?: number; /** * (Highcharts, Highstock) A string to prepend to each series' y value. * Overridable in each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts, Highstock) A string to append to each series' y value. * Overridable in each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotSplineZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotStochasticAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotStochasticAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotStochasticAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotStochasticAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotStochasticConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotStochasticConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotStochasticConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotStochasticConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotStochasticConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotStochasticConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotStochasticConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotStochasticDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: string; /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotStochasticDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotStochasticDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotStochasticDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotStochasticDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotStochasticDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotStochasticDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotStochasticDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotStochasticEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotStochasticLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotStochasticLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotStochasticLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotStochasticLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotStochasticLastVisiblePriceLabelOptions; } /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotStochasticMarkerOptions { /** * (Highstock) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highstock) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highstock) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. */ radius?: number; /** * (Highstock) States for a single point marker. */ states?: PlotStochasticMarkerStatesOptions; /** * (Highstock) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highstock) Animation when hovering over the marker. */ export interface PlotStochasticMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highstock) The hover state for a single point marker. */ export interface PlotStochasticMarkerStatesHoverOptions { /** * (Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotStochasticMarkerStatesHoverAnimationOptions); /** * (Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highstock) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotStochasticMarkerStatesInactiveOptions { /** * (Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highstock) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotStochasticMarkerStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highstock) States for a single point marker. */ export interface PlotStochasticMarkerStatesOptions { /** * (Highstock) The hover state for a single point marker. */ hover?: PlotStochasticMarkerStatesHoverOptions; inactive?: PlotStochasticMarkerStatesInactiveOptions; /** * (Highstock) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotStochasticMarkerStatesNormalOptions; /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotStochasticMarkerStatesSelectOptions; } /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotStochasticMarkerStatesSelectOptions { /** * (Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Stochastic oscillator. This series requires the `linkedTo` option * to be set and should be loaded after the `stock/indicators/indicators.js` * file. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `stochastic` series are defined in plotOptions.stochastic. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotStochasticOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotStochasticAccessibilityOptions); /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotStochasticAnimationOptions); /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highstock) Whether to compare indicator to the main series values or * indicator values. */ compareToMain?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotStochasticConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotStochasticDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotStochasticDragDropOptions; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotStochasticEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotStochasticLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotStochasticLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotStochasticLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The main series ID that indicator will be * based on. Required for this indicator. */ linkedTo?: string; /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotStochasticMarkerOptions; /** * (Highstock) The name of the series as shown in the legend, tooltip etc. * If not set, it will be based on a technical indicator type and default * params. */ name?: string; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Paramters used in calculation of regression series' points. */ params?: PlotStochasticParamsOptions; /** * (Highstock) Properties for each single point. */ point?: PlotStochasticPointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highstock) Smoothed line options. */ smoothedLine?: PlotStochasticSmoothedLineOptions; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotStochasticStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotStochasticTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotStochasticZonesOptions>; } /** * (Highstock) Paramters used in calculation of regression series' points. */ export interface PlotStochasticParamsOptions { /** * (Highstock) Periods for Stochastic oscillator: [%K, %D]. */ periods?: [number, number]; } /** * (Highstock) Events for each single point. */ export interface PlotStochasticPointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotStochasticPointOptions { /** * (Highstock) Events for each single point. */ events?: PlotStochasticPointEventsOptions; } /** * (Highstock) Smoothed line options. */ export interface PlotStochasticSmoothedLineOptions { /** * (Highstock) Styles for a smoothed line. */ styles?: PlotStochasticSmoothedLineStylesOptions; } /** * (Highstock) Styles for a smoothed line. */ export interface PlotStochasticSmoothedLineStylesOptions { /** * (Highstock) Color of the line. If not set, it's inherited from * plotOptions.stochastic.color. */ lineColor?: ColorString; /** * (Highstock) Pixel width of the line. */ lineWidth?: number; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotStochasticStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotStochasticStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotStochasticStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotStochasticStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotStochasticStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotStochasticStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotStochasticStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotStochasticStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotStochasticStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotStochasticStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotStochasticStatesHoverMarkerStatesHoverOptions; inactive?: PlotStochasticStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotStochasticStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotStochasticStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotStochasticStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotStochasticStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotStochasticStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotStochasticStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotStochasticStatesHoverMarkerOptions; } export interface PlotStochasticStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotStochasticStatesInactiveOptions { animation?: PlotStochasticStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotStochasticStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotStochasticStatesOptions { /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotStochasticStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotStochasticStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotStochasticStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotStochasticStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotStochasticStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotStochasticStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotStochasticStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotStochasticStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotStochasticStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotStochasticStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotStochasticStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotStochasticStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotStochasticStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotStochasticStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotStochasticStatesSelectMarkerStatesHoverOptions; inactive?: PlotStochasticStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotStochasticStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotStochasticStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotStochasticStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotStochasticStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotStochasticStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotStochasticStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotStochasticStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotStochasticTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotStochasticTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotStochasticTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) Number of decimals in indicator series. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotStochasticZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts, Highstock) Keyboard navigation for a series */ export interface PlotStreamgraphAccessibilityKeyboardNavigationOptions { /** * (Highcharts, Highstock) Enable/disable keyboard navigation support for a * specific series. */ enabled?: boolean; } /** * (Highcharts, Highstock) Accessibility options for a series. Requires the * accessibility module. */ export interface PlotStreamgraphAccessibilityOptions { /** * (Highcharts, Highstock) Provide a description of the series, announced to * screen readers. */ description?: string; /** * (Highcharts, Highstock) Enable/disable accessibility functionality for a * specific series. */ enabled?: boolean; /** * (Highcharts, Highstock) Expose only the series element to screen readers, * not its points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts, Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotStreamgraphAccessibilityKeyboardNavigationOptions); /** * (Highcharts, Highstock) Formatter function to use instead of the default * for point descriptions. Same as * `accessibility.pointDescriptionFormatter`, but for a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts, Highstock) Enable or disable the initial animation when a series * is displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotStreamgraphAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotStreamgraphConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotStreamgraphConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotStreamgraphConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotStreamgraphConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotStreamgraphConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotStreamgraphConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotStreamgraphConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotStreamgraphDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts, Highstock) Options for the drag handles. */ export interface PlotStreamgraphDragDropDragHandleOptions { /** * (Highcharts, Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts, Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The mouse cursor to use for the drag handles. By * default this is intelligently switching between `ew-resize` and * `ns-resize` depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts, Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts, Highstock) Function to define the SVG path to use for the * drag handles. Takes the point as argument. Should return an SVG path in * array format. The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts, Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box default state. */ export interface PlotStreamgraphDragDropGuideBoxDefaultOptions { /** * (Highcharts, Highstock) CSS class name of the guide box in this state. * Defaults to `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts, Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Guide box cursor. */ cursor?: string; /** * (Highcharts, Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts, Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts, Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box. The guide box has * one state by default, the `default` state. */ export interface PlotStreamgraphDragDropGuideBoxOptions { /** * (Highcharts, Highstock) Style options for the guide box default state. */ default?: PlotStreamgraphDragDropGuideBoxDefaultOptions; } /** * (Highcharts, Highstock) The draggable-points module allows points to be moved * around or modified in the chart. In addition to the options mentioned under * the `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotStreamgraphDragDropOptions { /** * (Highcharts, Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts, Highstock) Enable dragging in the Y dimension. Note that * this is not supported for TreeGrid axes (the default axis type in Gantt * charts). */ draggableY?: boolean; /** * (Highcharts, Highstock) Options for the drag handles. */ dragHandle?: PlotStreamgraphDragDropDragHandleOptions; /** * (Highcharts, Highstock) Set the maximum X value the points can be moved * to. */ dragMaxX?: number; /** * (Highcharts, Highstock) Set the maximum Y value the points can be moved * to. */ dragMaxY?: number; /** * (Highcharts, Highstock) Set the minimum X value the points can be moved * to. */ dragMinX?: number; /** * (Highcharts, Highstock) Set the minimum Y value the points can be moved * to. */ dragMinY?: number; /** * (Highcharts, Highstock) The X precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionX?: number; /** * (Highcharts, Highstock) The Y precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionY?: number; /** * (Highcharts, Highstock) The amount of pixels to drag the pointer before * it counts as a drag operation. This prevents drag/drop to fire when just * clicking or selecting points. */ dragSensitivity?: number; /** * (Highcharts, Highstock) Group the points by a property. Points with the * same property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts, Highstock) Style options for the guide box. The guide box * has one state by default, the `default` state. */ guideBox?: (PlotStreamgraphDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts, Highstock) Update points as they are dragged. If false, a * guide box is drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock) General event handlers for the series items. These * event hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotStreamgraphEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts, Highstock) Fires when the checkbox next to the series' name * in the legend is clicked. One parameter, `event`, is passed to the * function. The state of the checkbox is found by `event.checked`. The * checked item is found by `event.item`. Return `false` to prevent the * default action which is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is clicked. One parameter, * `event`, is passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is hidden after chart * generation time, either by clicking the legend item or by calling * `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts, Highstock) Fires when the legend item belonging to the * series is clicked. One parameter, `event`, is passed to the function. The * default action is to toggle the visibility of the series. This can be * prevented by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse leaves the graph. One * parameter, `event`, is passed to the function, containing common event * information. If the stickyTracking option is true, `mouseOut` doesn't * happen before the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse enters the graph. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is shown after chart * generation time, either by clicking the legend item or by calling * `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotStreamgraphLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotStreamgraphLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotStreamgraphLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotStreamgraphLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotStreamgraphLastVisiblePriceLabelOptions; } /** * (Highcharts, Highstock) Options for the point markers of line-like series. * Properties like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't have * markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotStreamgraphMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotStreamgraphMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotStreamgraphMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotStreamgraphMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotStreamgraphMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotStreamgraphMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotStreamgraphMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotStreamgraphMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotStreamgraphMarkerStatesHoverOptions; inactive?: PlotStreamgraphMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotStreamgraphMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotStreamgraphMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotStreamgraphMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts, Highstock) A streamgraph is a type of stacked area graph which * is displaced around a central axis, resulting in a flowing, organic shape. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `streamgraph` series are defined in * plotOptions.streamgraph. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotStreamgraphOptions { /** * (Highcharts, Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotStreamgraphAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highcharts, Highstock) Allow this series' points to be selected by * clicking on the graphic (columns, point markers, pie slices, map areas * etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts, Highstock) Enable or disable the initial animation when a * series is displayed. The animation can also be set as a configuration * object. Please note that this option only applies to the initial * animation of the series itself. For other animations, see chart.animation * and the animation parameter under the API methods. The following * properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotStreamgraphAnimationOptions); /** * (Highcharts, Highstock) For some series, there is a limit that shuts down * initial animation by default when the total number of points in the chart * is too high. For example, for a column chart and its derivatives, * animation does not run if there is more than 250 points totally. To * disable this cap, set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highcharts, Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts, Highstock) Set the point threshold for when a series should * enter boost mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highcharts, Highstock) An additional class name to apply to the series' * graphical elements. This option does not replace default class names of * the graphical element. */ className?: string; /** * (Highcharts, Highstock) Disable this option to allow series rendering in * the whole plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts, Highstock) The main color of the series. In line type series * it applies to the line and the point markers unless otherwise specified. * In bar type series it applies to the bars unless a color is specified per * point. The default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts, Highstock) Styled mode only. A specific color index to use * for the series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotStreamgraphConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highcharts, Highstock) You can set the cursor to "pointer" if you have * click events attached to the series, to signal to the user that the * points and lines can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highcharts, Highstock) A name for the dash style to use for the graph, * or for some series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotStreamgraphDataGroupingOptions; /** * (Highcharts, Highstock) Options for the series data labels, appearing * next to each data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts, Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts, Highstock) The draggable-points module allows points to be * moved around or modified in the chart. In addition to the options * mentioned under the `dragDrop` API structure, the module fires three * events, point.dragStart, point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotStreamgraphDragDropOptions; /** * (Highcharts, Highstock) Enable or disable the mouse tracking for a * specific series. This includes point tooltips and click events on graphs * and points. For large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts, Highstock) General event handlers for the series items. * These event hooks can also be attached to the series at run time using * the `Highcharts.addEvent` function. */ events?: PlotStreamgraphEventsOptions; /** * (Highcharts, Highstock) By default, series are exposed to screen readers * as regions. By enabling this option, the series element itself will be * exposed in the same way as the data points. This is useful if the series * is not used as a grouping entity in the chart, but you still want to * attach a description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highcharts, Highstock) Fill color or gradient for the area. When `null`, * the series' `color` is used with the series' `fillOpacity`. * * In styled mode, the fill color can be set with the `.highcharts-area` * class name. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Fill opacity for the area. When you set an * explicit `fillColor`, the `fillOpacity` is not applied. Instead, you * should define the opacity in the `fillColor` with an rgba color * definition. The `fillOpacity` setting, also the default setting, * overrides the alpha component of the `color` setting. * * In styled mode, the fill opacity can be set with the `.highcharts-area` * class name. */ fillOpacity?: number; /** * (Highcharts, Highstock) Determines whether the series should look for the * nearest point in both dimensions or just the x-dimension when hovering * the series. Defaults to `'xy'` for scatter series and `'x'` for most * other series. If the data has duplicate x-values, it is recommended to * set this to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highcharts, Highstock) Export-data module required. When set to `false` * will prevent the series data from being included in any form of data * export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts, Highstock) An array specifying which option maps to which * key in the data point array. This makes it convenient to work with * unstructured data arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotStreamgraphLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotStreamgraphLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotStreamgraphLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) A separate color for the graph line. By default * the line takes the `color` of the series, but the lineColor setting * allows setting a separate color for the line without altering the * `fillColor`. * * In styled mode, the line stroke can be set with the `.highcharts-graph` * class name. */ lineColor?: ColorString; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts, Highstock) Options for the point markers of line-like * series. Properties like `fillColor`, `lineColor` and `lineWidth` define * the visual appearance of the markers. Other series types, like column * series, don't have markers, but have visual options on the series level * instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotStreamgraphMarkerOptions; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts, Highstock) The color for the parts of the graph or points * that are below the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) A separate color for the negative part of the area. * * In styled mode, a negative color is set with the `.highcharts-negative` * class name. */ negativeFillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Opacity of a series parts: line, fill (e.g. area) * and dataLabels. */ opacity?: number; /** * (Highcharts, Highstock) Properties for each single point. */ point?: PlotStreamgraphPointOptions; /** * (Highcharts, Highstock) Same as accessibility.pointDescriptionFormatter, * but for an individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, `pointInterval` defines the interval of the x values. For * example, if a series contains one value every decade starting from year * 0, set `pointInterval` to `10`. In true `datetime` axes, the * `pointInterval` is set in milliseconds. * * It can be also be combined with `pointIntervalUnit` to draw irregular * time intervals. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointInterval?: number; /** * (Highcharts, Highstock, Gantt) On datetime series, this allows for * setting the pointInterval to irregular time units, `day`, `month` and * `year`. A day is usually the same as 24 hours, but `pointIntervalUnit` * also takes the DST crossover into consideration when dealing with local * time. Combine this option with `pointInterval` to draw weeks, quarters, 6 * months, 10 years etc. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointIntervalUnit?: OptionsPointIntervalUnitValue; /** * (Highcharts, Highstock, Gantt) Possible values: `"on"`, `"between"`, * `number`. * * In a column chart, when pointPlacement is `"on"`, the point will not * create any padding of the X axis. In a polar column chart this means that * the first column points directly north. If the pointPlacement is * `"between"`, the columns will be laid out between ticks. This is useful * for example for visualising an amount between two points in time or in a * certain sector of a polar chart. * * Since Highcharts 3.0.2, the point placement can also be numeric, where 0 * is on the axis value, -0.5 is between this value and the previous, and * 0.5 is between this value and the next. Unlike the textual options, * numeric point placement options won't affect axis padding. * * Note that pointPlacement needs a pointRange to work. For column series * this is computed, but for line-type series it needs to be set. * * For the `xrange` series type and gantt charts, if the Y axis is a * category axis, the `pointPlacement` applies to the Y axis rather than the * (typically datetime) X axis. * * Defaults to `undefined` in cartesian charts, `"between"` in polar charts. */ pointPlacement?: (number|string); /** * (Highstock) The width of each point on the x axis. For example in a * column chart with one value each day, the pointRange would be 1 day (= 24 * * 3600 * * * 1000 milliseconds). This is normally computed automatically, but this * option can be used to override the automatic value. */ pointRange?: number; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, pointStart defines on what value to start. For example, if a * series contains one yearly value starting from 1945, set pointStart to * 1945. */ pointStart?: number; /** * (Highcharts, Highstock) Whether to select the series initially. If * `showCheckbox` is true, the checkbox next to the series name in the * legend will be checked for a selected series. */ selected?: boolean; /** * (Highcharts, Highstock) Whether to apply a drop shadow to the graph line. * Since 2.3 the shadow can be an object configuration containing `color`, * `offsetX`, `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highcharts, Highstock) If true, a checkbox is displayed next to the * legend item to allow selecting the series. The state of the checkbox is * determined by the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts, Highstock) Whether to display this particular series or * series type in the legend. The default value is `true` for standalone * series, `false` for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts, Highstock) If set to `true`, the accessibility module will * skip past the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; /** * (Highcharts, Highstock) Whether to stack the values of each series on top * of each other. Possible values are `undefined` to disable, `"normal"` to * stack by value or `"percent"`. When stacking is enabled, data must be * sorted in ascending X order. A special stacking option is with the * streamgraph series type, where the stacking option is set to `"stream"`. * The second one is `"overlap"`, which only applies to waterfall series. */ stacking?: OptionsStackingValue; states?: PlotStreamgraphStatesOptions; /** * (Highcharts, Highstock) Sticky tracking of mouse events. When true, the * `mouseOut` event on a series isn't triggered until the mouse moves over * another series, or out of the plot area. When false, the `mouseOut` event * on a series is triggered when the mouse leaves the area around the * series' graph or markers. This also implies the tooltip when not shared. * When `stickyTracking` is false and `tooltip.shared` is false, the tooltip * will be hidden when moving the mouse between series. Defaults to true for * line and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The Y axis value to serve as the base for the * area, for distinguishing between values above and below a threshold. The * area between the graph and the threshold is filled. * * * If a number is given, the Y axis will scale to the threshold. * * * If `null`, the scaling behaves like a line series with fill between the * graph and the Y axis minimum. * * * If `Infinity` or `-Infinity`, the area between the graph and the * corresponing Y axis extreme is filled (since v6.1.0). */ threshold?: number; /** * (Highcharts, Highstock) A configuration object for the tooltip rendering * of each single series. Properties are inherited from tooltip, but only * the following properties can be defined on a series level. */ tooltip?: PlotStreamgraphTooltipOptions; /** * (Highcharts, Highstock) Whether the whole area or just the line should * respond to mouseover tooltips and other mouse or touch events. */ trackByArea?: boolean; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highcharts, Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotStreamgraphZonesOptions>; } /** * (Highcharts, Highstock) Events for each single point. */ export interface PlotStreamgraphPointEventsOptions { /** * (Highcharts, Highstock) Fires when a point is clicked. One parameter, * `event`, is passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock) Callback that fires while dragging a point. The * mouse event is passed in as parameter. The original data can be accessed * from `e.origin`, and the new point values can be accessed from * `e.newPoints`. If there is only a single point being updated, it can be * accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock) Callback that fires when starting to drag a * point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock) Callback that fires when the point is dropped. * The parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse leaves the area close to the * point. One parameter, `event`, is passed to the function, containing * common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse enters the area close to the * point. One parameter, `event`, is passed to the function, containing * common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is updated programmatically * through the `.update()` method. One parameter, `event`, is passed to the * function. The new point options can be accessed through `event.options`. * Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts, Highstock) Properties for each single point. */ export interface PlotStreamgraphPointOptions { /** * (Highcharts, Highstock) Events for each single point. */ events?: PlotStreamgraphPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotStreamgraphStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotStreamgraphStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotStreamgraphStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotStreamgraphStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotStreamgraphStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotStreamgraphStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotStreamgraphStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotStreamgraphStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotStreamgraphStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotStreamgraphStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotStreamgraphStatesHoverMarkerStatesHoverOptions; inactive?: PlotStreamgraphStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotStreamgraphStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotStreamgraphStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotStreamgraphStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts, Highstock) Options for the hovered series. These settings * override the normal state options when a series is moused over or touched. */ export interface PlotStreamgraphStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotStreamgraphStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Enable separate styles for the hovered series to * visualize that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotStreamgraphStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotStreamgraphStatesHoverMarkerOptions; } export interface PlotStreamgraphStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The opposite state of a hover for series. */ export interface PlotStreamgraphStatesInactiveOptions { animation?: PlotStreamgraphStatesInactiveAnimationOptions; /** * (Highcharts, Highstock) Opacity of series elements (dataLabels, line, * area). */ opacity?: number; } /** * (Highcharts, Highstock) The normal state of a series, or for point items in * column, pie and similar series. Currently only used for setting animation * when returning to normal state from hover. */ export interface PlotStreamgraphStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotStreamgraphStatesOptions { /** * (Highcharts, Highstock) Options for the hovered series. These settings * override the normal state options when a series is moused over or * touched. */ hover?: PlotStreamgraphStatesHoverOptions; /** * (Highcharts, Highstock) The opposite state of a hover for series. */ inactive?: PlotStreamgraphStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a series, or for point items * in column, pie and similar series. Currently only used for setting * animation when returning to normal state from hover. */ normal?: PlotStreamgraphStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotStreamgraphStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotStreamgraphStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotStreamgraphStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotStreamgraphStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotStreamgraphStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotStreamgraphStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotStreamgraphStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotStreamgraphStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotStreamgraphStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotStreamgraphStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotStreamgraphStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotStreamgraphStatesSelectMarkerStatesHoverOptions; inactive?: PlotStreamgraphStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotStreamgraphStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotStreamgraphStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotStreamgraphStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotStreamgraphStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotStreamgraphStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotStreamgraphStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotStreamgraphStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotStreamgraphTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts, Highstock) A configuration object for the tooltip rendering of * each single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ export interface PlotStreamgraphTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotStreamgraphTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highcharts, Highstock) Whether the tooltip should follow the mouse as it * moves across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts, Highstock) Whether the tooltip should update as the finger * moves on a touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts, Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts, Highstock) The HTML of the tooltip header line. Variables * are enclosed by curly brackets. Available variables are `point.key`, * `series.name`, `series.color` and other members from the `point` and * `series` objects. The `point.key` variable contains the category name, x * value or datetime string depending on the type of axis. For datetime * axes, the `point.key` date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts, Highstock) The name of a symbol to use for the border around * the tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts, Highstock) The number of milliseconds to wait until the * tooltip is hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts, Highstock) The HTML of the null point's line in the tooltip. * Works analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts, Highstock) Callback function to format the text of the * tooltip for visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts, Highstock) Whether to allow the tooltip to render outside * the chart's SVG element box. By default (`false`), the tooltip is * rendered within the chart's SVG element, which results in the tooltip * being aligned inside the chart area. For small charts, this may result in * clipping or overlapping. When `true`, a separate SVG element is created * and overlaid on the page, allowing the tooltip to be aligned inside the * page itself. */ outside?: boolean; /** * (Highcharts, Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts, Highstock) The HTML of the point's line in the tooltip. * Variables are enclosed by curly brackets. Available variables are * point.x, point.y, series. name and series.color and other properties on * the same form. Furthermore, `point.y` can be extended by the * `tooltip.valuePrefix` and `tooltip.valueSuffix` variables. This can also * be overridden for each series, which makes it a good hook for displaying * units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts, Highstock) A callback function for formatting the HTML * output for a single point in the tooltip. Like the `pointFormat` string, * but with more flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts, Highstock) How many decimals to show in each series' y * value. This is overridable in each series' tooltip options object. The * default is to preserve all decimals. */ valueDecimals?: number; /** * (Highcharts, Highstock) A string to prepend to each series' y value. * Overridable in each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts, Highstock) A string to append to each series' y value. * Overridable in each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotStreamgraphZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts) Keyboard navigation for a series */ export interface PlotSunburstAccessibilityKeyboardNavigationOptions { /** * (Highcharts) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highcharts) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotSunburstAccessibilityOptions { /** * (Highcharts) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highcharts) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highcharts) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotSunburstAccessibilityKeyboardNavigationOptions); /** * (Highcharts) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotSunburstAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotSunburstConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotSunburstConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotSunburstConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotSunburstConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotSunburstConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotSunburstConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotSunburstConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highcharts) Options for the drag handles. */ export interface PlotSunburstDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface PlotSunburstDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotSunburstDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: PlotSunburstDragDropGuideBoxDefaultOptions; } /** * (Highcharts) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotSunburstDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: PlotSunburstDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotSunburstDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotSunburstEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts) Fires when the checkbox next to the point name in the legend * is clicked. One parameter, event, is passed to the function. The state of * the checkbox is found by event.checked. The checked item is found by * event.item. Return false to prevent the default action which is to toggle * the select state of the series. */ checkboxClick?: Function; /** * (Highcharts) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotSunburstLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotSunburstLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotSunburstLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotSunburstLastVisiblePriceLabelOptions; } /** * (Highcharts) Can set a `colorVariation` on all points which lies on the same * level. */ export interface PlotSunburstLevelsColorVariationOptions { /** * (Highcharts) The key of a color variation. Currently supports * `brightness` only. */ key?: string; /** * (Highcharts) The ending value of a color variation. The last sibling will * receive this value. */ to?: number; } /** * (Highcharts) Determines the width of the ring per level. */ export interface PlotSunburstLevelSizeOptions { /** * (Highcharts) How to interpret `levelSize.value`. * * - `percentage` gives a width relative to result of outer radius minus * inner radius. * * - `pixels` gives the ring a fixed width in pixels. * * - `weight` takes the remaining width after percentage and pixels, and * distributes it accross all "weighted" levels. The value relative to the * sum of all weights determines the width. */ unit?: OptionsUnitValue; /** * (Highcharts) The value used for calculating the width of the ring. Its' * affect is determined by `levelSize.unit`. */ value?: number; } /** * (Highcharts) Set options on specific levels. Takes precedence over series * options, but not point options. */ export interface PlotSunburstLevelsOptions { /** * (Highcharts) Can set a `borderColor` on all points which lies on the same * level. */ borderColor?: ColorString; /** * (Highcharts) Can set a `borderDashStyle` on all points which lies on the * same level. */ borderDashStyle?: string; /** * (Highcharts) Can set a `borderWidth` on all points which lies on the same * level. */ borderWidth?: number; /** * (Highcharts) Can set a `color` on all points which lies on the same * level. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Can set a `colorVariation` on all points which lies on the * same level. */ colorVariation?: PlotSunburstLevelsColorVariationOptions; /** * (Highcharts) Can set `dataLabels` on all points which lies on the same * level. */ dataLabels?: object; /** * (Highcharts) Can set a `levelSize` on all points which lies on the same * level. */ levelSize?: object; /** * (Highcharts) Can set a `rotation` on all points which lies on the same * level. */ rotation?: number; /** * (Highcharts) Can set a `rotationMode` on all points which lies on the * same level. */ rotationMode?: string; } /** * (Highcharts) A Sunburst displays hierarchical data, where a level in the * hierarchy is represented by a circle. The center represents the root node of * the tree. The visualization bears a resemblance to both treemap and pie * charts. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `sunburst` series are defined in plotOptions.sunburst. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotSunburstOptions { /** * (Highcharts) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotSunburstAccessibilityOptions); /** * (Highcharts) When enabled the user can click on a point which is a parent * and zoom in on its children. Deprecated and replaced by * allowTraversingTree. */ allowDrillToNode?: boolean; /** * (Highcharts) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts) When enabled the user can click on a point which is a parent * and zoom in on its children. */ allowTraversingTree?: boolean; /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotSunburstAnimationOptions); /** * (Highcharts) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts) The color of the border surrounding each slice. When `null`, * the border takes the same color as the slice fill. This can be used * together with a `borderWidth` to fill drawing gaps created by * antialiazing artefacts in borderless pies. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highcharts) The width of the border surrounding each slice. * * When setting the border width to 0, there may be small gaps between the * slices due to SVG antialiasing artefacts. To work around this, keep the * border width at 0.5 or 1, but set the `borderColor` to `null` instead. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highcharts) The center of the sunburst chart relative to the plot area. * Can be percentages or pixel values. */ center?: Array<(number|string)>; /** * (Highcharts) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highcharts) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); colorByPoint?: boolean; /** * (Highcharts) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highcharts) A series specific or series type specific color set to use * instead of the global colors. */ colors?: Array<(ColorString|GradientColorObject|PatternObject)>; /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotSunburstConnectorsOptions; /** * (Highcharts) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highcharts) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: (DataLabelsOptionsObject|SeriesSunburstDataLabelsOptionsObject); /** * (Highcharts) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotSunburstDragDropOptions; /** * (Highcharts) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotSunburstEventsOptions; /** * (Highcharts) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highcharts) Export-data module required. When set to `false` will * prevent the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts) An array specifying which option maps to which key in the * data point array. This makes it convenient to work with unstructured data * arrays from different sources. */ keys?: Array<string>; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotSunburstLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotSunburstLastVisiblePriceOptions; /** * (Highcharts) Used together with the levels and `allowDrillToNode` * options. When set to false the first level visible when drilling is * considered to be level one. Otherwise the level will be the same as the * tree structure. */ levelIsConstant?: boolean; /** * (Highcharts) Set options on specific levels. Takes precedence over series * options, but not point options. */ levels?: Array<PlotSunburstLevelsOptions>; /** * (Highcharts) Determines the width of the ring per level. */ levelSize?: PlotSunburstLevelSizeOptions; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highcharts) Properties for each single point. */ point?: PlotSunburstPointOptions; /** * (Highcharts) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts) Which point to use as a root in the visualization. */ rootId?: string; /** * (Highcharts) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highcharts) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highcharts) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts) Whether to display this particular series or series type in * the legend. Since 2.1, pies are not shown in the legend by default. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts) The diameter of the pie relative to the plot area. Can be a * percentage or pixel value. Pixel values are given as integers. The * default behaviour (as of 3.0) is to scale to the plot area and give room * for data labels within the plot area. slicedOffset is also included in * the default size calculation. As a consequence, the size of the pie may * vary when points are updated and data labels more around. In that case it * is best to set a fixed value, for example `"75%"`. */ size?: (number|string|null); /** * (Highcharts) If set to `true`, the accessibility module will skip past * the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts) If a point is sliced, moved out from the center, how many * pixels should it be moved?. */ slicedOffset?: number; /** * (Highcharts) The start angle of the pie slices in degrees where 0 is top * and 90 right. */ startAngle?: number; states?: PlotSunburstStatesOptions; /** * (Highcharts) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip. When `stickyTracking` is * false and `tooltip.shared` is false, the tooltip will be hidden when * moving the mouse between series. */ stickyTracking?: boolean; /** * (Highcharts) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotSunburstTooltipOptions; /** * (Highcharts) Options for the button appearing when traversing down in a * treemap. */ traverseUpButton?: PlotSunburstTraverseUpButtonOptions; /** * (Highstock) The parameter allows setting line series type and use OHLC * indicators. Data in OHLC format is required. */ useOhlcData?: boolean; /** * (Highcharts) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; } /** * (Highcharts) Events for each single point. */ export interface PlotSunburstPointEventsOptions { /** * (Highcharts) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts) Callback that fires when the point is dropped. The * parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts) Fires when the legend item belonging to the pie point * (slice) is clicked. The `this` keyword refers to the point itself. One * parameter, `event`, is passed to the function, containing common event * information. The default action is to toggle the visibility of the point. * This can be prevented by calling `event.preventDefault()`. */ legendItemClick?: PointLegendItemClickCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts) Fires when the point is removed using the `.remove()` * method. One parameter, `event`, is passed to the function. Returning * `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts) Fires when the point is unselected either programmatically * or following a click on the point. One parameter, `event`, is passed to * the function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) Properties for each single point. */ export interface PlotSunburstPointOptions { /** * (Highcharts) Events for each single point. */ events?: PlotSunburstPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotSunburstStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotSunburstStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotSunburstStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotSunburstStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts) How much to brighten the point on interaction. Requires the * main color to be defined in hex or rgb(a) format. * * In styled mode, the hover brightness is by default replaced by a * fill-opacity given in the `.highcharts-point-hover` class. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotSunburstStatesHoverHaloOptions|null); } export interface PlotSunburstStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts) The opposite state of a hover for series. */ export interface PlotSunburstStatesInactiveOptions { animation?: PlotSunburstStatesInactiveAnimationOptions; /** * (Highcharts) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highcharts) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotSunburstStatesNormalOptions { /** * (Highcharts) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotSunburstStatesOptions { /** * (Highcharts) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotSunburstStatesHoverOptions; /** * (Highcharts) The opposite state of a hover for series. */ inactive?: PlotSunburstStatesInactiveOptions; /** * (Highcharts) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotSunburstStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotSunburstStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotSunburstStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotSunburstStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotSunburstStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotSunburstStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotSunburstStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotSunburstStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotSunburstStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotSunburstStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotSunburstStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotSunburstStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotSunburstStatesSelectMarkerStatesHoverOptions; inactive?: PlotSunburstStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotSunburstStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotSunburstStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotSunburstStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotSunburstStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotSunburstStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotSunburstStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotSunburstStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotSunburstTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotSunburstTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotSunburstTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highcharts) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts) The name of a symbol to use for the border around the * tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highcharts) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts) How many decimals to show in each series' y value. This is * overridable in each series' tooltip options object. The default is to * preserve all decimals. */ valueDecimals?: number; /** * (Highcharts) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts) Options for the button appearing when traversing down in a * treemap. */ export interface PlotSunburstTraverseUpButtonOptions { /** * (Highcharts) The position of the button. */ position?: PlotSunburstTraverseUpButtonPositionOptions; } /** * (Highcharts) The position of the button. */ export interface PlotSunburstTraverseUpButtonPositionOptions { /** * (Highcharts) Horizontal alignment of the button. */ align?: AlignValue; /** * (Highcharts) Vertical alignment of the button. */ verticalAlign?: VerticalAlignValue; /** * (Highcharts) Horizontal offset of the button. */ x?: number; /** * (Highcharts) Vertical offset of the button. */ y?: number; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotSupertrendAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotSupertrendAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotSupertrendAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotSupertrendAnimationOptions { duration?: number; } /** * (Highstock) The styles for the Supertrend line that intersect main series. */ export interface PlotSupertrendChangeTrendLineOptions { styles?: PlotSupertrendChangeTrendLineStylesOptions; } export interface PlotSupertrendChangeTrendLineStylesOptions { /** * (Highstock) The dash or dot style of the grid lines. For possible values, * see this demonstration. */ dashStyle?: DashStyleValue; /** * (Highstock) Color of the line. */ lineColor?: ColorString; /** * (Highstock) Pixel width of the line. */ lineWidth?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotSupertrendConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotSupertrendConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotSupertrendConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotSupertrendConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotSupertrendConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotSupertrendConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotSupertrendConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotSupertrendDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotSupertrendDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotSupertrendDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotSupertrendDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotSupertrendDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotSupertrendDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotSupertrendDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotSupertrendDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotSupertrendEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotSupertrendLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotSupertrendLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotSupertrendLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotSupertrendLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotSupertrendLastVisiblePriceLabelOptions; } /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotSupertrendMarkerOptions { /** * (Highstock) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highstock) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highstock) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. */ radius?: number; /** * (Highstock) States for a single point marker. */ states?: PlotSupertrendMarkerStatesOptions; /** * (Highstock) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highstock) Animation when hovering over the marker. */ export interface PlotSupertrendMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highstock) The hover state for a single point marker. */ export interface PlotSupertrendMarkerStatesHoverOptions { /** * (Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotSupertrendMarkerStatesHoverAnimationOptions); /** * (Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highstock) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotSupertrendMarkerStatesInactiveOptions { /** * (Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highstock) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotSupertrendMarkerStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highstock) States for a single point marker. */ export interface PlotSupertrendMarkerStatesOptions { /** * (Highstock) The hover state for a single point marker. */ hover?: PlotSupertrendMarkerStatesHoverOptions; inactive?: PlotSupertrendMarkerStatesInactiveOptions; /** * (Highstock) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotSupertrendMarkerStatesNormalOptions; /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotSupertrendMarkerStatesSelectOptions; } /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotSupertrendMarkerStatesSelectOptions { /** * (Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Supertrend indicator. This series requires the `linkedTo` option * to be set and should be loaded after the `stock/indicators/indicators.js` and * `stock/indicators/sma.js`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `supertrend` series are defined in plotOptions.supertrend. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotSupertrendOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotSupertrendAccessibilityOptions); /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotSupertrendAnimationOptions); /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highstock) The styles for the Supertrend line that intersect main * series. */ changeTrendLine?: PlotSupertrendChangeTrendLineOptions; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highstock) Whether to compare indicator to the main series values or * indicator values. */ compareToMain?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotSupertrendConnectorsOptions; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotSupertrendDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotSupertrendDragDropOptions; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotSupertrendEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Color of the Supertrend series line that is above the main * series. */ fallingTrendColor?: ColorString; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotSupertrendLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotSupertrendLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotSupertrendLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The main series ID that indicator will be * based on. Required for this indicator. */ linkedTo?: string; /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotSupertrendMarkerOptions; /** * (Highstock) The name of the series as shown in the legend, tooltip etc. * If not set, it will be based on a technical indicator type and default * params. */ name?: string; /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Paramters used in calculation of Supertrend indicator series * points. */ params?: PlotSupertrendParamsOptions; /** * (Highstock) Properties for each single point. */ point?: PlotSupertrendPointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) Color of the Supertrend series line that is beneath the main * series. */ risingTrendColor?: ColorString; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotSupertrendStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotSupertrendTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotSupertrendZonesOptions>; } /** * (Highstock) Paramters used in calculation of Supertrend indicator series * points. */ export interface PlotSupertrendParamsOptions { /** * (Highstock) Multiplier for Supertrend Indicator. */ multiplier?: number; /** * (Highstock) The base period for indicator Supertrend Indicator * calculations. This is the number of data points which are taken into * account for the indicator calculations. */ period?: number; } /** * (Highstock) Events for each single point. */ export interface PlotSupertrendPointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotSupertrendPointOptions { /** * (Highstock) Events for each single point. */ events?: PlotSupertrendPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotSupertrendStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotSupertrendStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotSupertrendStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotSupertrendStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotSupertrendStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotSupertrendStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotSupertrendStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotSupertrendStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotSupertrendStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotSupertrendStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotSupertrendStatesHoverMarkerStatesHoverOptions; inactive?: PlotSupertrendStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotSupertrendStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotSupertrendStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotSupertrendStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotSupertrendStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotSupertrendStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotSupertrendStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotSupertrendStatesHoverMarkerOptions; } export interface PlotSupertrendStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotSupertrendStatesInactiveOptions { animation?: PlotSupertrendStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotSupertrendStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotSupertrendStatesOptions { /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotSupertrendStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotSupertrendStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotSupertrendStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotSupertrendStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotSupertrendStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotSupertrendStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotSupertrendStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotSupertrendStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotSupertrendStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotSupertrendStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotSupertrendStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotSupertrendStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotSupertrendStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotSupertrendStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotSupertrendStatesSelectMarkerStatesHoverOptions; inactive?: PlotSupertrendStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotSupertrendStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotSupertrendStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotSupertrendStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotSupertrendStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotSupertrendStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotSupertrendStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotSupertrendStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotSupertrendTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotSupertrendTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotSupertrendTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) Number of decimals in indicator series. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotSupertrendZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotTemaAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotTemaAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotTemaAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotTemaAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotTemaConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotTemaConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotTemaConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotTemaConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotTemaConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotTemaConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotTemaConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotTemaDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotTemaDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotTemaDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotTemaDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotTemaDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotTemaDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotTemaDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotTemaDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotTemaEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotTemaLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotTemaLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotTemaLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotTemaLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotTemaLastVisiblePriceLabelOptions; } /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotTemaMarkerOptions { /** * (Highstock) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highstock) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highstock) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. */ radius?: number; /** * (Highstock) States for a single point marker. */ states?: PlotTemaMarkerStatesOptions; /** * (Highstock) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highstock) Animation when hovering over the marker. */ export interface PlotTemaMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highstock) The hover state for a single point marker. */ export interface PlotTemaMarkerStatesHoverOptions { /** * (Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotTemaMarkerStatesHoverAnimationOptions); /** * (Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highstock) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotTemaMarkerStatesInactiveOptions { /** * (Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highstock) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotTemaMarkerStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highstock) States for a single point marker. */ export interface PlotTemaMarkerStatesOptions { /** * (Highstock) The hover state for a single point marker. */ hover?: PlotTemaMarkerStatesHoverOptions; inactive?: PlotTemaMarkerStatesInactiveOptions; /** * (Highstock) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotTemaMarkerStatesNormalOptions; /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotTemaMarkerStatesSelectOptions; } /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotTemaMarkerStatesSelectOptions { /** * (Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Normalized average true range indicator (NATR). This series * requires `linkedTo` option to be set and should be loaded after the * `stock/indicators/indicators.js` and `stock/indicators/ema.js`. * * Requires `https://code.highcharts.com/stock/indicators/ema.js`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `tema` series are defined in plotOptions.tema. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotTemaOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotTemaAccessibilityOptions); /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotTemaAnimationOptions); /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highstock) Whether to compare indicator to the main series values or * indicator values. */ compareToMain?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotTemaConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotTemaDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotTemaDragDropOptions; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotTemaEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotTemaLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotTemaLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotTemaLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The main series ID that indicator will be * based on. Required for this indicator. */ linkedTo?: string; /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotTemaMarkerOptions; /** * (Highstock) The name of the series as shown in the legend, tooltip etc. * If not set, it will be based on a technical indicator type and default * params. */ name?: string; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Paramters used in calculation of regression series' points. */ params?: PlotTemaParamsOptions; /** * (Highstock) Properties for each single point. */ point?: PlotTemaPointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotTemaStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotTemaTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotTemaZonesOptions>; } /** * (Highstock) Paramters used in calculation of regression series' points. */ export interface PlotTemaParamsOptions { /** * (Highstock) The point index which indicator calculations will base. For * example using OHLC data, index=2 means the indicator will be calculated * using Low values. * * By default index value used to be set to 0. Since Highstock 7 by default * index is set to 3 which means that the ema indicator will be calculated * using Close values. */ index?: number; /** * (Highstock) The base period for indicator calculations. This is the * number of data points which are taken into account for the indicator * calculations. */ period?: number; } /** * (Highstock) Events for each single point. */ export interface PlotTemaPointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotTemaPointOptions { /** * (Highstock) Events for each single point. */ events?: PlotTemaPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotTemaStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotTemaStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotTemaStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotTemaStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotTemaStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotTemaStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotTemaStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotTemaStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotTemaStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotTemaStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotTemaStatesHoverMarkerStatesHoverOptions; inactive?: PlotTemaStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotTemaStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotTemaStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotTemaStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotTemaStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotTemaStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotTemaStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotTemaStatesHoverMarkerOptions; } export interface PlotTemaStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotTemaStatesInactiveOptions { animation?: PlotTemaStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotTemaStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotTemaStatesOptions { /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotTemaStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotTemaStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotTemaStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotTemaStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotTemaStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotTemaStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotTemaStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotTemaStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotTemaStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotTemaStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotTemaStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotTemaStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotTemaStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotTemaStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotTemaStatesSelectMarkerStatesHoverOptions; inactive?: PlotTemaStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotTemaStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotTemaStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotTemaStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotTemaStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotTemaStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotTemaStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotTemaStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotTemaTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotTemaTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotTemaTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) Number of decimals in indicator series. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotTemaZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts, Highmaps) Keyboard navigation for a series */ export interface PlotTilemapAccessibilityKeyboardNavigationOptions { /** * (Highcharts, Highmaps) Enable/disable keyboard navigation support for a * specific series. */ enabled?: boolean; } /** * (Highcharts, Highmaps) Accessibility options for a series. Requires the * accessibility module. */ export interface PlotTilemapAccessibilityOptions { /** * (Highcharts, Highmaps) Provide a description of the series, announced to * screen readers. */ description?: string; /** * (Highcharts, Highmaps) Enable/disable accessibility functionality for a * specific series. */ enabled?: boolean; /** * (Highcharts, Highmaps) Expose only the series element to screen readers, * not its points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts, Highmaps) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotTilemapAccessibilityKeyboardNavigationOptions); /** * (Highcharts, Highmaps) Formatter function to use instead of the default * for point descriptions. Same as * `accessibility.pointDescriptionFormatter`, but for a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts, Highmaps) Animation is disabled by default on the heatmap * series. */ export interface PlotTilemapAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotTilemapConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotTilemapConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotTilemapConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotTilemapConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotTilemapConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotTilemapConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotTilemapConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotTilemapDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts, Highmaps) Options for the drag handles. */ export interface PlotTilemapDragDropDragHandleOptions { /** * (Highcharts, Highmaps) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts, Highmaps) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highmaps) The mouse cursor to use for the drag handles. By * default this is intelligently switching between `ew-resize` and * `ns-resize` depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts, Highmaps) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts, Highmaps) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts, Highmaps) Function to define the SVG path to use for the * drag handles. Takes the point as argument. Should return an SVG path in * array format. The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts, Highmaps) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts, Highmaps) Style options for the guide box default state. */ export interface PlotTilemapDragDropGuideBoxDefaultOptions { /** * (Highcharts, Highmaps) CSS class name of the guide box in this state. * Defaults to `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts, Highmaps) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highmaps) Guide box cursor. */ cursor?: string; /** * (Highcharts, Highmaps) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts, Highmaps) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts, Highmaps) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts, Highmaps) Style options for the guide box. The guide box has one * state by default, the `default` state. */ export interface PlotTilemapDragDropGuideBoxOptions { /** * (Highcharts, Highmaps) Style options for the guide box default state. */ default?: PlotTilemapDragDropGuideBoxDefaultOptions; } /** * (Highcharts, Highmaps) The draggable-points module allows points to be moved * around or modified in the chart. In addition to the options mentioned under * the `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotTilemapDragDropOptions { /** * (Highcharts, Highmaps) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts, Highmaps) Enable dragging in the Y dimension. Note that this * is not supported for TreeGrid axes (the default axis type in Gantt * charts). */ draggableY?: boolean; /** * (Highcharts, Highmaps) Options for the drag handles. */ dragHandle?: PlotTilemapDragDropDragHandleOptions; /** * (Highcharts, Highmaps) Set the maximum X value the points can be moved * to. */ dragMaxX?: number; /** * (Highcharts, Highmaps) Set the maximum Y value the points can be moved * to. */ dragMaxY?: number; /** * (Highcharts, Highmaps) Set the minimum X value the points can be moved * to. */ dragMinX?: number; /** * (Highcharts, Highmaps) Set the minimum Y value the points can be moved * to. */ dragMinY?: number; /** * (Highcharts, Highmaps) The X precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionX?: number; /** * (Highcharts, Highmaps) The Y precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionY?: number; /** * (Highcharts, Highmaps) The amount of pixels to drag the pointer before it * counts as a drag operation. This prevents drag/drop to fire when just * clicking or selecting points. */ dragSensitivity?: number; /** * (Highcharts, Highmaps) Group the points by a property. Points with the * same property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts, Highmaps) Style options for the guide box. The guide box has * one state by default, the `default` state. */ guideBox?: (PlotTilemapDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts, Highmaps) Update points as they are dragged. If false, a * guide box is drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highmaps) General event handlers for the series items. These * event hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotTilemapEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts, Highmaps) Fires when the checkbox next to the series' name * in the legend is clicked. One parameter, `event`, is passed to the * function. The state of the checkbox is found by `event.checked`. The * checked item is found by `event.item`. Return `false` to prevent the * default action which is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts, Highmaps) Fires when the series is clicked. One parameter, * `event`, is passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts, Highmaps) Fires when the series is hidden after chart * generation time, either by clicking the legend item or by calling * `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts, Highmaps) Fires when the legend item belonging to the series * is clicked. One parameter, `event`, is passed to the function. The * default action is to toggle the visibility of the series. This can be * prevented by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts, Highmaps) Fires when the mouse leaves the graph. One * parameter, `event`, is passed to the function, containing common event * information. If the stickyTracking option is true, `mouseOut` doesn't * happen before the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts, Highmaps) Fires when the mouse enters the graph. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts, Highmaps) Fires when the series is shown after chart * generation time, either by clicking the legend item or by calling * `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotTilemapLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotTilemapLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotTilemapLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotTilemapLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotTilemapLastVisiblePriceLabelOptions; } /** * (Highcharts, Highmaps) A tilemap series is a type of heatmap where the tile * shapes are configurable. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `tilemap` series are defined in plotOptions.tilemap. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotTilemapOptions { /** * (Highcharts, Highmaps) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotTilemapAccessibilityOptions); /** * (Highcharts, Highmaps) Allow this series' points to be selected by * clicking on the graphic (columns, point markers, pie slices, map areas * etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts, Highmaps) Animation is disabled by default on the heatmap * series. */ animation?: (boolean|PlotTilemapAnimationOptions); /** * (Highcharts, Highmaps) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts, Highmaps) Set the point threshold for when a series should * enter boost mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width for each heat map item. */ borderWidth?: number; /** * (Highcharts, Highmaps) An additional class name to apply to the series' * graphical elements. This option does not replace default class names of * the graphical element. */ className?: string; /** * (Highcharts, Highmaps) Disable this option to allow series rendering in * the whole plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts) The main color of the series. In heat maps this color is * rarely used, as we mostly use the color to denote the value of each * point. Unless options are set in the colorAxis, the default value is * pulled from the options.colors array. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts, Highmaps) Styled mode only. A specific color index to use * for the series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highcharts, Highmaps) The column size - how many X axis units each * column in the tilemap should span. Works as in Heatmaps. */ colsize?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotTilemapConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highcharts, Highmaps) You can set the cursor to "pointer" if you have * click events attached to the series, to signal to the user that the * points and lines can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotTilemapDataGroupingOptions; /** * (Highcharts, Highmaps) Options for the series data labels, appearing next * to each data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts, Highmaps) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts, Highmaps) The draggable-points module allows points to be * moved around or modified in the chart. In addition to the options * mentioned under the `dragDrop` API structure, the module fires three * events, point.dragStart, point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotTilemapDragDropOptions; /** * (Highcharts, Highmaps) Enable or disable the mouse tracking for a * specific series. This includes point tooltips and click events on graphs * and points. For large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts, Highmaps) General event handlers for the series items. These * event hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotTilemapEventsOptions; /** * (Highcharts, Highmaps) By default, series are exposed to screen readers * as regions. By enabling this option, the series element itself will be * exposed in the same way as the data points. This is useful if the series * is not used as a grouping entity in the chart, but you still want to * attach a description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highmaps) Export-data module required. When set to `false` * will prevent the series data from being included in any form of data * export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highmaps) An array specifying which option maps to which key * in the data point array. This makes it convenient to work with * unstructured data arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotTilemapLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotTilemapLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotTilemapLastVisiblePriceOptions; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts, Highmaps) The color for the parts of the graph or points * that are below the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highmaps) The color applied to null points. In styled mode, * a general CSS class is applied instead. */ nullColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highmaps) Opacity of a series parts: line, fill (e.g. area) * and dataLabels. */ opacity?: number; /** * (Highcharts, Highmaps) Properties for each single point. */ point?: PlotTilemapPointOptions; /** * (Highcharts, Highmaps) Same as accessibility.pointDescriptionFormatter, * but for an individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highmaps) The padding between points in the tilemap. */ pointPadding?: number; /** * (Highcharts, Highmaps) The row size - how many Y axis units each tilemap * row should span. Analogous to colsize. */ rowsize?: number; /** * (Highcharts, Highmaps) Whether to select the series initially. If * `showCheckbox` is true, the checkbox next to the series name in the * legend will be checked for a selected series. */ selected?: boolean; /** * (Highcharts, Highmaps) If true, a checkbox is displayed next to the * legend item to allow selecting the series. The state of the checkbox is * determined by the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts, Highmaps) Whether to display this particular series or * series type in the legend. The default value is `true` for standalone * series, `false` for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts, Highmaps) If set to `true`, the accessibility module will * skip past the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; states?: PlotTilemapStatesOptions; /** * (Highcharts, Highstock) Sticky tracking of mouse events. When true, the * `mouseOut` event on a series isn't triggered until the mouse moves over * another series, or out of the plot area. When false, the `mouseOut` event * on a series is triggered when the mouse leaves the area around the * series' graph or markers. This also implies the tooltip. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. */ stickyTracking?: boolean; /** * (Highcharts, Highmaps) The shape of the tiles in the tilemap. Possible * values are `hexagon`, `circle`, `diamond`, and `square`. */ tileShape?: TilemapShapeValue; /** * (Highcharts, Highstock) A configuration object for the tooltip rendering * of each single series. Properties are inherited from tooltip. Overridable * properties are `headerFormat`, `pointFormat`, `yDecimals`, `xDateFormat`, * `yPrefix` and `ySuffix`. Unlike other series, in a scatter plot the * series.name by default shows in the headerFormat and point.x and point.y * in the pointFormat. */ tooltip?: PlotTilemapTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highcharts, Highmaps) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotTilemapZonesOptions>; } /** * (Highcharts, Highmaps) Events for each single point. */ export interface PlotTilemapPointEventsOptions { /** * (Highcharts, Highmaps) Fires when a point is clicked. One parameter, * `event`, is passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highmaps) Callback that fires while dragging a point. The * mouse event is passed in as parameter. The original data can be accessed * from `e.origin`, and the new point values can be accessed from * `e.newPoints`. If there is only a single point being updated, it can be * accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highmaps) Callback that fires when starting to drag a point. * The mouse event object is passed in as an argument. If a drag handle is * used, `e.updateProp` is set to the data property being dragged. The * `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highmaps) Callback that fires when the point is dropped. The * parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highmaps) Fires when the mouse leaves the area close to the * point. One parameter, `event`, is passed to the function, containing * common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highmaps) Fires when the mouse enters the area close to the * point. One parameter, `event`, is passed to the function, containing * common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highmaps) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highmaps) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highmaps) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highmaps) Fires when the point is updated programmatically * through the `.update()` method. One parameter, `event`, is passed to the * function. The new point options can be accessed through `event.options`. * Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts, Highmaps) Properties for each single point. */ export interface PlotTilemapPointOptions { /** * (Highcharts, Highmaps) Events for each single point. */ events?: PlotTilemapPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotTilemapStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ export interface PlotTilemapStatesHoverHaloAttributesOptions { zIndex?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotTilemapStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: PlotTilemapStatesHoverHaloAttributesOptions; enabled?: boolean; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotTilemapStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotTilemapStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotTilemapStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotTilemapStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotTilemapStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotTilemapStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotTilemapStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotTilemapStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotTilemapStatesHoverMarkerStatesHoverOptions; inactive?: PlotTilemapStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotTilemapStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotTilemapStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotTilemapStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts, Highmaps) Options for the hovered series. These settings * override the normal state options when a series is moused over or touched. */ export interface PlotTilemapStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotTilemapStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) How much to brighten the point on interaction. Requires the * main color to be defined in hex or rgb(a) format. * * In styled mode, the hover brightening is by default replaced with a * fill-opacity set in the `.highcharts-point:hover` rule. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highmaps) Enable separate styles for the hovered series to * visualize that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: PlotTilemapStatesHoverHaloOptions; /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotTilemapStatesHoverMarkerOptions; } export interface PlotTilemapStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts, Highmaps) The opposite state of a hover for series. */ export interface PlotTilemapStatesInactiveOptions { animation?: PlotTilemapStatesInactiveAnimationOptions; /** * (Highcharts, Highmaps) Opacity of series elements (dataLabels, line, * area). */ opacity?: number; } /** * (Highcharts, Highmaps) The normal state of a series, or for point items in * column, pie and similar series. Currently only used for setting animation * when returning to normal state from hover. */ export interface PlotTilemapStatesNormalOptions { /** * (Highcharts, Highmaps) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotTilemapStatesOptions { /** * (Highcharts, Highmaps) Options for the hovered series. These settings * override the normal state options when a series is moused over or * touched. */ hover?: PlotTilemapStatesHoverOptions; /** * (Highcharts, Highmaps) The opposite state of a hover for series. */ inactive?: PlotTilemapStatesInactiveOptions; /** * (Highcharts, Highmaps) The normal state of a series, or for point items * in column, pie and similar series. Currently only used for setting * animation when returning to normal state from hover. */ normal?: PlotTilemapStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotTilemapStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotTilemapStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotTilemapStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotTilemapStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotTilemapStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotTilemapStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotTilemapStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotTilemapStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotTilemapStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotTilemapStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotTilemapStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotTilemapStatesSelectMarkerStatesHoverOptions; inactive?: PlotTilemapStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotTilemapStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotTilemapStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotTilemapStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotTilemapStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotTilemapStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotTilemapStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotTilemapStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotTilemapTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts, Highstock) A configuration object for the tooltip rendering of * each single series. Properties are inherited from tooltip. Overridable * properties are `headerFormat`, `pointFormat`, `yDecimals`, `xDateFormat`, * `yPrefix` and `ySuffix`. Unlike other series, in a scatter plot the * series.name by default shows in the headerFormat and point.x and point.y in * the pointFormat. */ export interface PlotTilemapTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotTilemapTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highcharts, Highstock) Whether the tooltip should follow the mouse as it * moves across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts, Highstock) Whether the tooltip should update as the finger * moves on a touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts, Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts, Highstock) The HTML of the tooltip header line. Variables * are enclosed by curly brackets. Available variables are `point.key`, * `series.name`, `series.color` and other members from the `point` and * `series` objects. The `point.key` variable contains the category name, x * value or datetime string depending on the type of axis. For datetime * axes, the `point.key` date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts, Highstock) The name of a symbol to use for the border around * the tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts, Highstock) The number of milliseconds to wait until the * tooltip is hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts, Highstock) The HTML of the null point's line in the tooltip. * Works analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts, Highstock) Callback function to format the text of the * tooltip for visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts, Highstock) Whether to allow the tooltip to render outside * the chart's SVG element box. By default (`false`), the tooltip is * rendered within the chart's SVG element, which results in the tooltip * being aligned inside the chart area. For small charts, this may result in * clipping or overlapping. When `true`, a separate SVG element is created * and overlaid on the page, allowing the tooltip to be aligned inside the * page itself. */ outside?: boolean; /** * (Highcharts, Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts, Highstock) The HTML of the point's line in the tooltip. * Variables are enclosed by curly brackets. Available variables are * point.x, point.y, series. name and series.color and other properties on * the same form. Furthermore, `point.y` can be extended by the * `tooltip.valuePrefix` and `tooltip.valueSuffix` variables. This can also * be overridden for each series, which makes it a good hook for displaying * units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts, Highstock) A callback function for formatting the HTML * output for a single point in the tooltip. Like the `pointFormat` string, * but with more flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts, Highstock) How many decimals to show in each series' y * value. This is overridable in each series' tooltip options object. The * default is to preserve all decimals. */ valueDecimals?: number; /** * (Highcharts, Highstock) A string to prepend to each series' y value. * Overridable in each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts, Highstock) A string to append to each series' y value. * Overridable in each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotTilemapZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts) Keyboard navigation for a series */ export interface PlotTimelineAccessibilityKeyboardNavigationOptions { /** * (Highcharts) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highcharts) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotTimelineAccessibilityOptions { /** * (Highcharts) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highcharts) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highcharts) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotTimelineAccessibilityKeyboardNavigationOptions); /** * (Highcharts) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotTimelineAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotTimelineConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotTimelineConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotTimelineConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotTimelineConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotTimelineConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotTimelineConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotTimelineConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotTimelineDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts) Options for the series data labels, appearing next to each data * point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names (see * example). */ export interface PlotTimelineDataLabelsOptions { allowOverlap?: boolean; /** * (Highcharts) Whether to position data labels alternately. For example, if * distance is set equal to `100`, then data labels will be positioned * alternately (on both sides of the point) at a distance of 100px. */ alternate?: boolean; backgroundColor?: string; borderColor?: string; borderRadius?: number; borderWidth?: number; color?: string; /** * (Highcharts) The color of the line connecting the data label to the * point. The default color is the same as the point's color. * * In styled mode, the connector stroke is given in the * `.highcharts-data-label-connector` class. */ connectorColor?: string; /** * (Highcharts) The width of the line connecting the data label to the * point. * * In styled mode, the connector stroke width is given in the * `.highcharts-data-label-connector` class. */ connectorWidth?: number; /** * (Highcharts) A pixel value defining the distance between the data label * and the point. Negative numbers puts the label on top of the point. */ distance?: number; enabled?: boolean; formatter?: FormatterCallbackFunction<object>; /** * (Highcharts) Shadow options for the data label. */ shadow?: (boolean|CSSObject); style?: PlotTimelineDataLabelsStyleOptions; verticalAlign?: string; } export interface PlotTimelineDataLabelsStyleOptions { fontSize?: string; fontWeight?: string; textOutline?: string; } /** * (Highcharts) Options for the drag handles. */ export interface PlotTimelineDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface PlotTimelineDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotTimelineDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: PlotTimelineDragDropGuideBoxDefaultOptions; } /** * (Highcharts) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotTimelineDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: PlotTimelineDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotTimelineDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotTimelineEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotTimelineLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotTimelineLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotTimelineLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotTimelineLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotTimelineLastVisiblePriceLabelOptions; } /** * (Highcharts) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotTimelineMarkerOptions { /** * (Highcharts) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highcharts) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highcharts) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highcharts) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts) The radius of the point marker. */ radius?: number; /** * (Highcharts) States for a single point marker. */ states?: PlotTimelineMarkerStatesOptions; /** * (Highcharts) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts) Animation when hovering over the marker. */ export interface PlotTimelineMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts) The hover state for a single point marker. */ export interface PlotTimelineMarkerStatesHoverOptions { /** * (Highcharts) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotTimelineMarkerStatesHoverAnimationOptions); /** * (Highcharts) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highcharts) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotTimelineMarkerStatesInactiveOptions { /** * (Highcharts) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotTimelineMarkerStatesNormalOptions { /** * (Highcharts) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts) States for a single point marker. */ export interface PlotTimelineMarkerStatesOptions { /** * (Highcharts) The hover state for a single point marker. */ hover?: PlotTimelineMarkerStatesHoverOptions; inactive?: PlotTimelineMarkerStatesInactiveOptions; /** * (Highcharts) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotTimelineMarkerStatesNormalOptions; /** * (Highcharts) The appearance of the point marker when selected. In order * to allow a point to be selected, set the `series.allowPointSelect` option * to true. */ select?: PlotTimelineMarkerStatesSelectOptions; } /** * (Highcharts) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotTimelineMarkerStatesSelectOptions { /** * (Highcharts) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts) The timeline series presents given events along a drawn line. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `timeline` series are defined in plotOptions.timeline. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotTimelineOptions { /** * (Highcharts) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotTimelineAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highcharts) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotTimelineAnimationOptions); /** * (Highcharts) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highcharts) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highcharts) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; colorByPoint?: boolean; /** * (Highcharts) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotTimelineConnectorsOptions; /** * (Highcharts) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotTimelineDataGroupingOptions; /** * (Highcharts) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: PlotTimelineDataLabelsOptions; /** * (Highcharts) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotTimelineDragDropOptions; /** * (Highcharts) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotTimelineEventsOptions; /** * (Highcharts) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; ignoreHiddenPoint?: boolean; /** * (Highcharts) Export-data module required. When set to `false` will * prevent the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts) An array specifying which option maps to which key in the * data point array. This makes it convenient to work with unstructured data * arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotTimelineLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotTimelineLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotTimelineLastVisiblePriceOptions; legendType?: string; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts) Options for the point markers of line-like series. * Properties like `fillColor`, `lineColor` and `lineWidth` define the * visual appearance of the markers. Other series types, like column series, * don't have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotTimelineMarkerOptions; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highcharts) Properties for each single point. */ point?: PlotTimelinePointOptions; /** * (Highcharts) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) The width of each point on the x axis. For example in a * column chart with one value each day, the pointRange would be 1 day (= 24 * * 3600 * * * 1000 milliseconds). This is normally computed automatically, but this * option can be used to override the automatic value. */ pointRange?: number; /** * (Highcharts) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highcharts) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highcharts) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts) If set to `true`, the accessibility module will skip past * the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; states?: PlotTimelineStatesOptions; /** * (Highcharts) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotTimelineTooltipOptions; /** * (Highstock) The parameter allows setting line series type and use OHLC * indicators. Data in OHLC format is required. */ useOhlcData?: boolean; /** * (Highcharts) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; } /** * (Highcharts) Events for each single point. */ export interface PlotTimelinePointEventsOptions { /** * (Highcharts) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts) Callback that fires when the point is dropped. The * parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts) Fires when the point is removed using the `.remove()` * method. One parameter, `event`, is passed to the function. Returning * `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts) Fires when the point is unselected either programmatically * or following a click on the point. One parameter, `event`, is passed to * the function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) Properties for each single point. */ export interface PlotTimelinePointOptions { /** * (Highcharts) Events for each single point. */ events?: PlotTimelinePointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotTimelineStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotTimelineStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotTimelineStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotTimelineStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotTimelineStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotTimelineStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotTimelineStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotTimelineStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotTimelineStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotTimelineStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotTimelineStatesHoverMarkerStatesHoverOptions; inactive?: PlotTimelineStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotTimelineStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotTimelineStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotTimelineStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotTimelineStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotTimelineStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotTimelineStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotTimelineStatesHoverMarkerOptions; } export interface PlotTimelineStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts) The opposite state of a hover for series. */ export interface PlotTimelineStatesInactiveOptions { animation?: PlotTimelineStatesInactiveAnimationOptions; /** * (Highcharts) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highcharts) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotTimelineStatesNormalOptions { /** * (Highcharts) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotTimelineStatesOptions { /** * (Highcharts) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotTimelineStatesHoverOptions; /** * (Highcharts) The opposite state of a hover for series. */ inactive?: PlotTimelineStatesInactiveOptions; /** * (Highcharts) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotTimelineStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotTimelineStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotTimelineStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotTimelineStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotTimelineStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotTimelineStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotTimelineStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotTimelineStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotTimelineStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotTimelineStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotTimelineStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotTimelineStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotTimelineStatesSelectMarkerStatesHoverOptions; inactive?: PlotTimelineStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotTimelineStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotTimelineStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotTimelineStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotTimelineStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotTimelineStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotTimelineStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotTimelineStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotTimelineTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotTimelineTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotTimelineTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highcharts) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts) The name of a symbol to use for the border around the * tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highcharts) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts) How many decimals to show in each series' y value. This is * overridable in each series' tooltip options object. The default is to * preserve all decimals. */ valueDecimals?: number; /** * (Highcharts) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts) Keyboard navigation for a series */ export interface PlotTreemapAccessibilityKeyboardNavigationOptions { /** * (Highcharts) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highcharts) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotTreemapAccessibilityOptions { /** * (Highcharts) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highcharts) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highcharts) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotTreemapAccessibilityKeyboardNavigationOptions); /** * (Highcharts) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotTreemapAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotTreemapConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotTreemapConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotTreemapConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotTreemapConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotTreemapConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotTreemapConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotTreemapConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotTreemapDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts) Options for the drag handles. */ export interface PlotTreemapDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface PlotTreemapDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotTreemapDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: PlotTreemapDragDropGuideBoxDefaultOptions; } /** * (Highcharts) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotTreemapDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: PlotTreemapDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotTreemapDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts) Options for the button appearing when drilling down in a * treemap. Deprecated and replaced by traverseUpButton. */ export interface PlotTreemapDrillUpButtonOptions { /** * (Highcharts) The position of the button. */ position?: PlotTreemapDrillUpButtonPositionOptions; } /** * (Highcharts) The position of the button. */ export interface PlotTreemapDrillUpButtonPositionOptions { /** * (Highcharts) Horizontal alignment of the button. */ align?: AlignValue; /** * (Highcharts) Vertical alignment of the button. */ verticalAlign?: VerticalAlignValue; /** * (Highcharts) Horizontal offset of the button. */ x?: number; /** * (Highcharts) Vertical offset of the button. */ y?: number; } /** * (Highcharts) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotTreemapEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts) Fires on a request for change of root node for the tree, * before the update is made. An event object is passed to the function, * containing additional properties `newRootId`, `previousRootId`, `redraw` * and `trigger`. */ setRootNode?: Function; /** * (Highcharts) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotTreemapLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotTreemapLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotTreemapLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotTreemapLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotTreemapLastVisiblePriceLabelOptions; } /** * (Highcharts) A configuration object to define how the color of a child varies * from the parent's color. The variation is distributed among the children of * node. For example when setting brightness, the brightness change will range * from the parent's original brightness on the first child, to the amount set * in the `to` setting on the last node. This allows a gradient-like color * scheme that sets children out from each other while highlighting the grouping * on treemaps and sectors on sunburst charts. */ export interface PlotTreemapLevelsColorVariationOptions { /** * (Highcharts) The key of a color variation. Currently supports * `brightness` only. */ key?: "brightness"; /** * (Highcharts) The ending value of a color variation. The last sibling will * receive this value. */ to?: number; } /** * (Highcharts) Set options on specific levels. Takes precedence over series * options, but not point options. */ export interface PlotTreemapLevelsOptions { /** * (Highcharts) Can set a `borderColor` on all points which lies on the same * level. */ borderColor?: ColorString; /** * (Highcharts) Set the dash style of the border of all the point which lies * on the level. See (see online documentation for example) for possible * options. */ borderDashStyle?: string; /** * (Highcharts) Can set the borderWidth on all points which lies on the same * level. */ borderWidth?: number; /** * (Highcharts) Can set a color on all points which lies on the same level. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) A configuration object to define how the color of a child * varies from the parent's color. The variation is distributed among the * children of node. For example when setting brightness, the brightness * change will range from the parent's original brightness on the first * child, to the amount set in the `to` setting on the last node. This * allows a gradient-like color scheme that sets children out from each * other while highlighting the grouping on treemaps and sectors on sunburst * charts. */ colorVariation?: PlotTreemapLevelsColorVariationOptions; /** * (Highcharts) Can set the options of dataLabels on each point which lies * on the level. plotOptions.treemap.dataLabels for possible values. */ dataLabels?: object; /** * (Highcharts) Can set the layoutAlgorithm option on a specific level. */ layoutAlgorithm?: OptionsLayoutAlgorithmValue; /** * (Highcharts) Can set the layoutStartingDirection option on a specific * level. */ layoutStartingDirection?: OptionsLayoutStartingDirectionValue; /** * (Highcharts) Decides which level takes effect from the options set in the * levels object. */ level?: number; } /** * (Highcharts) A treemap displays hierarchical data using nested rectangles. * The data can be laid out in varying ways depending on options. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `treemap` series are defined in plotOptions.treemap. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotTreemapOptions { /** * (Highcharts) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotTreemapAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highcharts) When enabled the user can click on a point which is a parent * and zoom in on its children. Deprecated and replaced by * allowTraversingTree. */ allowDrillToNode?: boolean; /** * (Highcharts) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts) When enabled the user can click on a point which is a parent * and zoom in on its children. */ allowTraversingTree?: boolean; /** * (Highcharts) Enabling this option will make the treemap alternate the * drawing direction between vertical and horizontal. The next levels * starting direction will always be the opposite of the previous. */ alternateStartingDirection?: boolean; /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotTreemapAnimationOptions); /** * (Highcharts) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highcharts) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The color of the border surrounding each tree map item. */ borderColor?: ColorString; /** * (Highmaps) The width of the border surrounding each tree map item. */ borderWidth?: number; /** * (Highcharts) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highcharts) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts) When using automatic point colors pulled from the * `options.colors` collection, this option determines whether the chart * should receive one color per series or one color per point. */ colorByPoint?: boolean; /** * (Highcharts) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highcharts) A series specific or series type specific color set to apply * instead of the global colors when colorByPoint is true. */ colors?: Array<(ColorString|GradientColorObject|PatternObject)>; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotTreemapConnectorsOptions; /** * (Highcharts) When the series contains less points than the crop * threshold, all points are drawn, event if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highcharts) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highcharts) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotTreemapDataGroupingOptions; /** * (Highcharts) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotTreemapDragDropOptions; /** * (Highcharts) Options for the button appearing when drilling down in a * treemap. Deprecated and replaced by traverseUpButton. */ drillUpButton?: PlotTreemapDrillUpButtonOptions; /** * (Highcharts) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotTreemapEventsOptions; /** * (Highcharts) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highcharts) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highcharts) Whether to ignore hidden points when the layout algorithm * runs. If `false`, hidden points will leave open spaces. */ ignoreHiddenPoint?: boolean; /** * (Highcharts) Export-data module required. When set to `false` will * prevent the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts) This option decides if the user can interact with the parent * nodes or just the leaf nodes. When this option is undefined, it will be * true by default. However when allowTraversingTree is true, then it will * be false by default. */ interactByLeaf?: boolean; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts) An array specifying which option maps to which key in the * data point array. This makes it convenient to work with unstructured data * arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotTreemapLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotTreemapLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotTreemapLastVisiblePriceOptions; /** * (Highcharts) This option decides which algorithm is used for setting * position and dimensions of the points. */ layoutAlgorithm?: OptionsLayoutAlgorithmValue; /** * (Highcharts) Defines which direction the layout algorithm will start * drawing. */ layoutStartingDirection?: OptionsLayoutStartingDirectionValue; /** * (Highcharts) Used together with the levels and allowTraversingTree * options. When set to false the first level visible to be level one, which * is dynamic when traversing the tree. Otherwise the level will be the same * as the tree structure. */ levelIsConstant?: boolean; /** * (Highcharts) Set options on specific levels. Takes precedence over series * options, but not point options. */ levels?: Array<PlotTreemapLevelsOptions>; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) The width of the line connecting the data points. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts) The color for the parts of the graph or points that are * below the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The opacity of a point in treemap. When a point has * children, the visibility of the children is determined by the opacity. */ opacity?: number; /** * (Highcharts) Properties for each single point. */ point?: PlotTreemapPointOptions; /** * (Highcharts) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, `pointInterval` defines the interval of the x values. For * example, if a series contains one value every decade starting from year * 0, set `pointInterval` to `10`. In true `datetime` axes, the * `pointInterval` is set in milliseconds. * * It can be also be combined with `pointIntervalUnit` to draw irregular * time intervals. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointInterval?: number; /** * (Highcharts, Highstock, Gantt) On datetime series, this allows for * setting the pointInterval to irregular time units, `day`, `month` and * `year`. A day is usually the same as 24 hours, but `pointIntervalUnit` * also takes the DST crossover into consideration when dealing with local * time. Combine this option with `pointInterval` to draw weeks, quarters, 6 * months, 10 years etc. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointIntervalUnit?: OptionsPointIntervalUnitValue; /** * (Highstock) The width of each point on the x axis. For example in a * column chart with one value each day, the pointRange would be 1 day (= 24 * * 3600 * * * 1000 milliseconds). This is normally computed automatically, but this * option can be used to override the automatic value. */ pointRange?: number; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, pointStart defines on what value to start. For example, if a * series contains one yearly value starting from 1945, set pointStart to * 1945. */ pointStart?: number; /** * (Highcharts) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highcharts) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts) Whether to display this series type or specific series item * in the legend. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts) If set to `true`, the accessibility module will skip past * the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; /** * (Highcharts) The sort index of the point inside the treemap level. */ sortIndex?: number; /** * (Highcharts, Highstock) Whether to stack the values of each series on top * of each other. Possible values are `undefined` to disable, `"normal"` to * stack by value or `"percent"`. When stacking is enabled, data must be * sorted in ascending X order. A special stacking option is with the * streamgraph series type, where the stacking option is set to `"stream"`. * The second one is `"overlap"`, which only applies to waterfall series. */ stacking?: OptionsStackingValue; /** * (Highcharts) A wrapper object for all the series options in specific * states. */ states?: PlotTreemapStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highcharts, Highstock) Sticky tracking of mouse events. When true, the * `mouseOut` event on a series isn't triggered until the mouse moves over * another series, or out of the plot area. When false, the `mouseOut` event * on a series is triggered when the mouse leaves the area around the * series' graph or markers. This also implies the tooltip. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highcharts, Highstock) A configuration object for the tooltip rendering * of each single series. Properties are inherited from tooltip. Overridable * properties are `headerFormat`, `pointFormat`, `yDecimals`, `xDateFormat`, * `yPrefix` and `ySuffix`. Unlike other series, in a scatter plot the * series.name by default shows in the headerFormat and point.x and point.y * in the pointFormat. */ tooltip?: PlotTreemapTooltipOptions; /** * (Highcharts) Options for the button appearing when traversing down in a * treemap. */ traverseUpButton?: PlotTreemapTraverseUpButtonOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highcharts) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotTreemapZonesOptions>; } /** * (Highcharts) Events for each single point. */ export interface PlotTreemapPointEventsOptions { /** * (Highcharts) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts) Callback that fires when the point is dropped. The * parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts) Fires when the point is removed using the `.remove()` * method. One parameter, `event`, is passed to the function. Returning * `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts) Fires when the point is unselected either programmatically * or following a click on the point. One parameter, `event`, is passed to * the function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) Properties for each single point. */ export interface PlotTreemapPointOptions { /** * (Highcharts) Events for each single point. */ events?: PlotTreemapPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotTreemapStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotTreemapStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotTreemapStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotTreemapStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotTreemapStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotTreemapStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotTreemapStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotTreemapStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotTreemapStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotTreemapStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotTreemapStatesHoverMarkerStatesHoverOptions; inactive?: PlotTreemapStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotTreemapStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotTreemapStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotTreemapStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts) Options for the hovered series */ export interface PlotTreemapStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotTreemapStatesHoverAnimationOptions); /** * (Highmaps) The border color for the hovered state. */ borderColor?: string; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) Brightness for the hovered point. Defaults to 0 if the heatmap * series is loaded first, otherwise 0.1. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (boolean|PlotTreemapStatesHoverHaloOptions); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotTreemapStatesHoverMarkerOptions; /** * (Highcharts) The opacity of a point in treemap. When a point has * children, the visibility of the children is determined by the opacity. */ opacity?: number; /** * (Highcharts) The shadow option for hovered state. */ shadow?: boolean; } export interface PlotTreemapStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts) The opposite state of a hover for series. */ export interface PlotTreemapStatesInactiveOptions { animation?: PlotTreemapStatesInactiveAnimationOptions; /** * (Highcharts) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highcharts) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotTreemapStatesNormalOptions { /** * (Highcharts) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts) A wrapper object for all the series options in specific states. */ export interface PlotTreemapStatesOptions { /** * (Highcharts) Options for the hovered series */ hover?: PlotTreemapStatesHoverOptions; /** * (Highcharts) The opposite state of a hover for series. */ inactive?: PlotTreemapStatesInactiveOptions; /** * (Highcharts) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotTreemapStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotTreemapStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotTreemapStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotTreemapStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotTreemapStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotTreemapStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotTreemapStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotTreemapStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotTreemapStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotTreemapStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotTreemapStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotTreemapStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotTreemapStatesSelectMarkerStatesHoverOptions; inactive?: PlotTreemapStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotTreemapStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotTreemapStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotTreemapStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotTreemapStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotTreemapStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotTreemapStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotTreemapStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotTreemapTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts, Highstock) A configuration object for the tooltip rendering of * each single series. Properties are inherited from tooltip. Overridable * properties are `headerFormat`, `pointFormat`, `yDecimals`, `xDateFormat`, * `yPrefix` and `ySuffix`. Unlike other series, in a scatter plot the * series.name by default shows in the headerFormat and point.x and point.y in * the pointFormat. */ export interface PlotTreemapTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotTreemapTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highcharts, Highstock) Whether the tooltip should follow the mouse as it * moves across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts, Highstock) Whether the tooltip should update as the finger * moves on a touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts, Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts, Highstock) The HTML of the tooltip header line. Variables * are enclosed by curly brackets. Available variables are `point.key`, * `series.name`, `series.color` and other members from the `point` and * `series` objects. The `point.key` variable contains the category name, x * value or datetime string depending on the type of axis. For datetime * axes, the `point.key` date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts, Highstock) The name of a symbol to use for the border around * the tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts, Highstock) The number of milliseconds to wait until the * tooltip is hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts, Highstock) The HTML of the null point's line in the tooltip. * Works analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts, Highstock) Callback function to format the text of the * tooltip for visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts, Highstock) Whether to allow the tooltip to render outside * the chart's SVG element box. By default (`false`), the tooltip is * rendered within the chart's SVG element, which results in the tooltip * being aligned inside the chart area. For small charts, this may result in * clipping or overlapping. When `true`, a separate SVG element is created * and overlaid on the page, allowing the tooltip to be aligned inside the * page itself. */ outside?: boolean; /** * (Highcharts, Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts, Highstock) The HTML of the point's line in the tooltip. * Variables are enclosed by curly brackets. Available variables are * point.x, point.y, series. name and series.color and other properties on * the same form. Furthermore, `point.y` can be extended by the * `tooltip.valuePrefix` and `tooltip.valueSuffix` variables. This can also * be overridden for each series, which makes it a good hook for displaying * units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts, Highstock) A callback function for formatting the HTML * output for a single point in the tooltip. Like the `pointFormat` string, * but with more flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts, Highstock) How many decimals to show in each series' y * value. This is overridable in each series' tooltip options object. The * default is to preserve all decimals. */ valueDecimals?: number; /** * (Highcharts, Highstock) A string to prepend to each series' y value. * Overridable in each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts, Highstock) A string to append to each series' y value. * Overridable in each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts) Options for the button appearing when traversing down in a * treemap. */ export interface PlotTreemapTraverseUpButtonOptions { /** * (Highcharts) The position of the button. */ position?: PlotTreemapTraverseUpButtonPositionOptions; } /** * (Highcharts) The position of the button. */ export interface PlotTreemapTraverseUpButtonPositionOptions { /** * (Highcharts) Horizontal alignment of the button. */ align?: AlignValue; /** * (Highcharts) Vertical alignment of the button. */ verticalAlign?: VerticalAlignValue; /** * (Highcharts) Horizontal offset of the button. */ x?: number; /** * (Highcharts) Vertical offset of the button. */ y?: number; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotTreemapZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotTrixAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotTrixAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotTrixAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotTrixAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotTrixConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotTrixConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotTrixConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotTrixConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotTrixConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotTrixConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotTrixConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotTrixDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotTrixDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotTrixDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotTrixDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotTrixDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotTrixDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotTrixDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotTrixDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotTrixEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotTrixLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotTrixLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotTrixLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotTrixLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotTrixLastVisiblePriceLabelOptions; } /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotTrixMarkerOptions { /** * (Highstock) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highstock) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highstock) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. */ radius?: number; /** * (Highstock) States for a single point marker. */ states?: PlotTrixMarkerStatesOptions; /** * (Highstock) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highstock) Animation when hovering over the marker. */ export interface PlotTrixMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highstock) The hover state for a single point marker. */ export interface PlotTrixMarkerStatesHoverOptions { /** * (Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotTrixMarkerStatesHoverAnimationOptions); /** * (Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highstock) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotTrixMarkerStatesInactiveOptions { /** * (Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highstock) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotTrixMarkerStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highstock) States for a single point marker. */ export interface PlotTrixMarkerStatesOptions { /** * (Highstock) The hover state for a single point marker. */ hover?: PlotTrixMarkerStatesHoverOptions; inactive?: PlotTrixMarkerStatesInactiveOptions; /** * (Highstock) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotTrixMarkerStatesNormalOptions; /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotTrixMarkerStatesSelectOptions; } /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotTrixMarkerStatesSelectOptions { /** * (Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Normalized average true range indicator (NATR). This series * requires `linkedTo` option to be set. * * Requires https://code.highcharts.com/stock/indicators/ema.js and * https://code.highcharts.com/stock/indicators/tema.js. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `trix` series are defined in plotOptions.trix. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotTrixOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotTrixAccessibilityOptions); /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotTrixAnimationOptions); /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highstock) Whether to compare indicator to the main series values or * indicator values. */ compareToMain?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotTrixConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotTrixDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotTrixDragDropOptions; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotTrixEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotTrixLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotTrixLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotTrixLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The main series ID that indicator will be * based on. Required for this indicator. */ linkedTo?: string; /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotTrixMarkerOptions; /** * (Highstock) The name of the series as shown in the legend, tooltip etc. * If not set, it will be based on a technical indicator type and default * params. */ name?: string; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Paramters used in calculation of regression series' points. */ params?: PlotTrixParamsOptions; /** * (Highstock) Properties for each single point. */ point?: PlotTrixPointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotTrixStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotTrixTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotTrixZonesOptions>; } /** * (Highstock) Paramters used in calculation of regression series' points. */ export interface PlotTrixParamsOptions { /** * (Highstock) The point index which indicator calculations will base. For * example using OHLC data, index=2 means the indicator will be calculated * using Low values. * * By default index value used to be set to 0. Since Highstock 7 by default * index is set to 3 which means that the ema indicator will be calculated * using Close values. */ index?: number; /** * (Highstock) The base period for indicator calculations. This is the * number of data points which are taken into account for the indicator * calculations. */ period?: number; } /** * (Highstock) Events for each single point. */ export interface PlotTrixPointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotTrixPointOptions { /** * (Highstock) Events for each single point. */ events?: PlotTrixPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotTrixStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotTrixStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotTrixStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotTrixStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotTrixStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotTrixStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotTrixStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotTrixStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotTrixStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotTrixStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotTrixStatesHoverMarkerStatesHoverOptions; inactive?: PlotTrixStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotTrixStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotTrixStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotTrixStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotTrixStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotTrixStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotTrixStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotTrixStatesHoverMarkerOptions; } export interface PlotTrixStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotTrixStatesInactiveOptions { animation?: PlotTrixStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotTrixStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotTrixStatesOptions { /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotTrixStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotTrixStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotTrixStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotTrixStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotTrixStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotTrixStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotTrixStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotTrixStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotTrixStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotTrixStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotTrixStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotTrixStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotTrixStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotTrixStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotTrixStatesSelectMarkerStatesHoverOptions; inactive?: PlotTrixStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotTrixStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotTrixStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotTrixStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotTrixStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotTrixStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotTrixStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotTrixStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotTrixTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotTrixTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotTrixTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) Number of decimals in indicator series. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotTrixZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts) Keyboard navigation for a series */ export interface PlotVariablepieAccessibilityKeyboardNavigationOptions { /** * (Highcharts) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highcharts) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotVariablepieAccessibilityOptions { /** * (Highcharts) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highcharts) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highcharts) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotVariablepieAccessibilityKeyboardNavigationOptions); /** * (Highcharts) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotVariablepieAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotVariablepieConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotVariablepieConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotVariablepieConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotVariablepieConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotVariablepieConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotVariablepieConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotVariablepieConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotVariablepieDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts) Options for the drag handles. */ export interface PlotVariablepieDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface PlotVariablepieDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotVariablepieDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: PlotVariablepieDragDropGuideBoxDefaultOptions; } /** * (Highcharts) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotVariablepieDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: PlotVariablepieDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotVariablepieDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotVariablepieEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts) Fires when the checkbox next to the point name in the legend * is clicked. One parameter, event, is passed to the function. The state of * the checkbox is found by event.checked. The checked item is found by * event.item. Return false to prevent the default action which is to toggle * the select state of the series. */ checkboxClick?: Function; /** * (Highcharts) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotVariablepieLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotVariablepieLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotVariablepieLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotVariablepieLastVisiblePriceLabelOptions; } /** * (Highcharts) A variable pie series is a two dimensional series type, where * each point renders an Y and Z value. Each point is drawn as a pie slice where * the size (arc) of the slice relates to the Y value and the radius of pie * slice relates to the Z value. Requires `highcharts-more.js`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `variablepie` series are defined in * plotOptions.variablepie. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotVariablepieOptions { /** * (Highcharts) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotVariablepieAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highcharts) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotVariablepieAnimationOptions); /** * (Highcharts) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts) The color of the border surrounding each slice. When `null`, * the border takes the same color as the slice fill. This can be used * together with a `borderWidth` to fill drawing gaps created by * antialiazing artefacts in borderless pies. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highcharts) The width of the border surrounding each slice. * * When setting the border width to 0, there may be small gaps between the * slices due to SVG antialiasing artefacts. To work around this, keep the * border width at 0.5 or 1, but set the `borderColor` to `null` instead. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highcharts) The center of the pie chart relative to the plot area. Can * be percentages or pixel values. The default behaviour (as of 3.0) is to * center the pie so that all slices and data labels are within the plot * area. As a consequence, the pie may actually jump around in a chart with * dynamic values, as the data labels move. In that case, the center should * be explicitly set, for example to `["50%", "50%"]`. */ center?: Array<(number|string|null)>; /** * (Highcharts) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highcharts) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highcharts) A series specific or series type specific color set to use * instead of the global colors. */ colors?: Array<(ColorString|GradientColorObject|PatternObject)>; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotVariablepieConnectorsOptions; /** * (Highcharts) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotVariablepieDataGroupingOptions; /** * (Highcharts) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: (DataLabelsOptionsObject|PlotPieDataLabelsOptionsObject); /** * (Highcharts) The thickness of a 3D pie. Requires `highcharts-3d.js` */ depth?: number; /** * (Highcharts) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotVariablepieDragDropOptions; /** * (Highcharts) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts) The end angle of the pie in degrees where 0 is top and 90 is * right. Defaults to `startAngle` plus 360. */ endAngle?: number; /** * (Highcharts) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotVariablepieEventsOptions; /** * (Highcharts) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts) Equivalent to chart.ignoreHiddenSeries, this option tells * whether the series shall be redrawn as if the hidden point were `null`. * * The default value changed from `false` to `true` with Highcharts 3.0. */ ignoreHiddenPoint?: boolean; /** * (Highcharts) Export-data module required. When set to `false` will * prevent the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts) The size of the inner diameter for the pie. A size greater * than 0 renders a donut chart. Can be a percentage or pixel value. * Percentages are relative to the pie size. Pixel values are given as * integers. * * Note: in Highcharts < 4.1.2, the percentage was relative to the plot * area, not the pie size. */ innerSize?: (number|string); /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts) An array specifying which option maps to which key in the * data point array. This makes it convenient to work with unstructured data * arrays from different sources. */ keys?: Array<string>; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotVariablepieLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotVariablepieLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts) The maximum size of the points' radius related to chart's * `plotArea`. If a number is set, it applies in pixels. */ maxPointSize?: (number|string); /** * (Highcharts) The minimum size of the points' radius related to chart's * `plotArea`. If a number is set, it applies in pixels. */ minPointSize?: (number|string); /** * (Highcharts) The minimum size for a pie in response to auto margins. The * pie will try to shrink to make room for data labels in side the plot * area, but only to this size. */ minSize?: number; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highcharts) Properties for each single point. */ point?: PlotVariablepiePointOptions; /** * (Highcharts) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) The width of each point on the x axis. For example in a * column chart with one value each day, the pointRange would be 1 day (= 24 * * 3600 * * * 1000 milliseconds). This is normally computed automatically, but this * option can be used to override the automatic value. */ pointRange?: number; /** * (Highcharts) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highcharts) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highcharts) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts) Whether to display this particular series or series type in * the legend. Since 2.1, pies are not shown in the legend by default. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts) The diameter of the pie relative to the plot area. Can be a * percentage or pixel value. Pixel values are given as integers. The * default behaviour (as of 3.0) is to scale to the plot area and give room * for data labels within the plot area. slicedOffset is also included in * the default size calculation. As a consequence, the size of the pie may * vary when points are updated and data labels more around. In that case it * is best to set a fixed value, for example `"75%"`. */ size?: (number|string|null); /** * (Highcharts) Whether the pie slice's value should be represented by the * area or the radius of the slice. Can be either `area` or `radius`. The * default, `area`, corresponds best to the human perception of the size of * each pie slice. */ sizeBy?: VariablePieSizeByValue; /** * (Highcharts) If set to `true`, the accessibility module will skip past * the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts) If a point is sliced, moved out from the center, how many * pixels should it be moved?. */ slicedOffset?: number; /** * (Highcharts) The start angle of the pie slices in degrees where 0 is top * and 90 right. */ startAngle?: number; states?: PlotVariablepieStatesOptions; /** * (Highcharts) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip. When `stickyTracking` is * false and `tooltip.shared` is false, the tooltip will be hidden when * moving the mouse between series. */ stickyTracking?: boolean; /** * (Highcharts) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotVariablepieTooltipOptions; /** * (Highstock) The parameter allows setting line series type and use OHLC * indicators. Data in OHLC format is required. */ useOhlcData?: boolean; /** * (Highcharts) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts) The maximum possible z value for the point's radius * calculation. If the point's Z value is bigger than zMax, the slice will * be drawn according to the zMax value */ zMax?: number; /** * (Highcharts) The minimum possible z value for the point's radius * calculation. If the point's Z value is smaller than zMin, the slice will * be drawn according to the zMin value. */ zMin?: number; } /** * (Highcharts) Events for each single point. */ export interface PlotVariablepiePointEventsOptions { /** * (Highcharts) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts) Callback that fires when the point is dropped. The * parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts) Fires when the legend item belonging to the pie point * (slice) is clicked. The `this` keyword refers to the point itself. One * parameter, `event`, is passed to the function, containing common event * information. The default action is to toggle the visibility of the point. * This can be prevented by calling `event.preventDefault()`. */ legendItemClick?: PointLegendItemClickCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts) Fires when the point is removed using the `.remove()` * method. One parameter, `event`, is passed to the function. Returning * `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts) Fires when the point is unselected either programmatically * or following a click on the point. One parameter, `event`, is passed to * the function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) Properties for each single point. */ export interface PlotVariablepiePointOptions { /** * (Highcharts) Events for each single point. */ events?: PlotVariablepiePointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotVariablepieStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotVariablepieStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotVariablepieStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotVariablepieStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts) How much to brighten the point on interaction. Requires the * main color to be defined in hex or rgb(a) format. * * In styled mode, the hover brightness is by default replaced by a * fill-opacity given in the `.highcharts-point-hover` class. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotVariablepieStatesHoverHaloOptions|null); } export interface PlotVariablepieStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts) The opposite state of a hover for series. */ export interface PlotVariablepieStatesInactiveOptions { animation?: PlotVariablepieStatesInactiveAnimationOptions; /** * (Highcharts) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highcharts) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotVariablepieStatesNormalOptions { /** * (Highcharts) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotVariablepieStatesOptions { /** * (Highcharts) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotVariablepieStatesHoverOptions; /** * (Highcharts) The opposite state of a hover for series. */ inactive?: PlotVariablepieStatesInactiveOptions; /** * (Highcharts) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotVariablepieStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotVariablepieStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotVariablepieStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotVariablepieStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotVariablepieStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotVariablepieStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotVariablepieStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotVariablepieStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotVariablepieStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotVariablepieStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotVariablepieStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotVariablepieStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotVariablepieStatesSelectMarkerStatesHoverOptions; inactive?: PlotVariablepieStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotVariablepieStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotVariablepieStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotVariablepieStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotVariablepieStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotVariablepieStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotVariablepieStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotVariablepieStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotVariablepieTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotVariablepieTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotVariablepieTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highcharts) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts) The name of a symbol to use for the border around the * tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highcharts) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts) How many decimals to show in each series' y value. This is * overridable in each series' tooltip options object. The default is to * preserve all decimals. */ valueDecimals?: number; /** * (Highcharts) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts) Keyboard navigation for a series */ export interface PlotVariwideAccessibilityKeyboardNavigationOptions { /** * (Highcharts) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highcharts) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotVariwideAccessibilityOptions { /** * (Highcharts) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highcharts) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highcharts) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotVariwideAccessibilityKeyboardNavigationOptions); /** * (Highcharts) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotVariwideAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotVariwideConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotVariwideConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotVariwideConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotVariwideConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotVariwideConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotVariwideConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotVariwideConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotVariwideDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. Defaults to `10`. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts) Options for the drag handles. */ export interface PlotVariwideDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface PlotVariwideDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotVariwideDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: PlotVariwideDragDropGuideBoxDefaultOptions; } /** * (Highcharts) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotVariwideDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: PlotVariwideDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotVariwideDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotVariwideEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotVariwideLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotVariwideLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotVariwideLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotVariwideLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotVariwideLastVisiblePriceLabelOptions; } /** * (Highcharts) A variwide chart (related to marimekko chart) is a column chart * with a variable width expressing a third dimension. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `variwide` series are defined in plotOptions.variwide. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotVariwideOptions { /** * (Highcharts) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotVariwideAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highcharts) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotVariwideAnimationOptions); /** * (Highcharts) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highcharts) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts, Highstock, Gantt) The color of the border surrounding each * column or bar. * * In styled mode, the border stroke can be set with the `.highcharts-point` * rule. */ borderColor?: ColorString; /** * (Highcharts, Highstock, Gantt) The corner radius of the border * surrounding each column or bar. */ borderRadius?: number; /** * (Highcharts, Highstock, Gantt) The width of the border surrounding each * column or bar. Defaults to `1` when there is room for a border, but to * `0` when the columns are so dense that a border would cover the next * column. * * In styled mode, the stroke width can be set with the `.highcharts-point` * rule. */ borderWidth?: number; /** * (Highcharts) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highcharts) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts, Highstock, Gantt) When using automatic point colors pulled * from the global colors or series-specific plotOptions.column.colors * collections, this option determines whether the chart should receive one * color per series or one color per point. * * In styled mode, the `colors` or `series.colors` arrays are not supported, * and instead this option gives the points individual color class names on * the form `highcharts-color-{n}`. */ colorByPoint?: boolean; /** * (Highcharts) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) A series specific or series type specific * color set to apply instead of the global colors when colorByPoint is * true. */ colors?: Array<(ColorString|GradientColorObject|PatternObject)>; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotVariwideConnectorsOptions; /** * (Highcharts, Highstock, Gantt) When the series contains less points than * the crop threshold, all points are drawn, event if the points fall * outside the visible plot area at the current zoom. The advantage of * drawing all points (including markers and columns), is that animation is * performed on updates. On the other hand, when the series contains more * points than the crop threshold, the series data is cropped to only * contain points that fall within the plot area. The advantage of cropping * away invisible points is to increase performance on large series. */ cropThreshold?: number; /** * (Highcharts) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotVariwideDataGroupingOptions; /** * (Highcharts) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotVariwideDragDropOptions; /** * (Highcharts) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotVariwideEventsOptions; /** * (Highcharts) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highcharts) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highcharts, Highstock, Gantt) Whether to group non-stacked columns or to * let them render independent of each other. Non-grouped columns will be * laid out individually and overlap each other. */ grouping?: boolean; /** * (Highcharts, Highstock, Gantt) In a variwide chart, the group padding is * 0 in order to express the horizontal stacking of items. */ groupPadding?: number; /** * (Highcharts) Export-data module required. When set to `false` will * prevent the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts) An array specifying which option maps to which key in the * data point array. This makes it convenient to work with unstructured data * arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotVariwideLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotVariwideLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotVariwideLastVisiblePriceOptions; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts, Highstock, Gantt) The maximum allowed pixel width for a * column, translated to the height of a bar in a bar chart. This prevents * the columns from becoming too wide when there is a small number of points * in the chart. */ maxPointWidth?: number; /** * (Highcharts, Highstock, Gantt) The minimal height for a column or width * for a bar. By default, 0 values are not shown. To visualize a 0 (or close * to zero) point, set the minimal point length to a pixel value like 3\. In * stacked column charts, minPointLength might not be respected for tightly * packed values. */ minPointLength?: number; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts) The color for the parts of the graph or points that are * below the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highcharts) Properties for each single point. */ point?: PlotVariwidePointOptions; /** * (Highcharts) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, `pointInterval` defines the interval of the x values. For * example, if a series contains one value every decade starting from year * 0, set `pointInterval` to `10`. In true `datetime` axes, the * `pointInterval` is set in milliseconds. * * It can be also be combined with `pointIntervalUnit` to draw irregular * time intervals. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointInterval?: number; /** * (Highcharts, Highstock, Gantt) On datetime series, this allows for * setting the pointInterval to irregular time units, `day`, `month` and * `year`. A day is usually the same as 24 hours, but `pointIntervalUnit` * also takes the DST crossover into consideration when dealing with local * time. Combine this option with `pointInterval` to draw weeks, quarters, 6 * months, 10 years etc. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointIntervalUnit?: OptionsPointIntervalUnitValue; /** * (Highcharts, Highstock, Gantt) In a variwide chart, the point padding is * 0 in order to express the horizontal stacking of items. */ pointPadding?: number; /** * (Highcharts, Highstock, Gantt) Possible values: `"on"`, `"between"`, * `number`. * * In a column chart, when pointPlacement is `"on"`, the point will not * create any padding of the X axis. In a polar column chart this means that * the first column points directly north. If the pointPlacement is * `"between"`, the columns will be laid out between ticks. This is useful * for example for visualising an amount between two points in time or in a * certain sector of a polar chart. * * Since Highcharts 3.0.2, the point placement can also be numeric, where 0 * is on the axis value, -0.5 is between this value and the previous, and * 0.5 is between this value and the next. Unlike the textual options, * numeric point placement options won't affect axis padding. * * Note that pointPlacement needs a pointRange to work. For column series * this is computed, but for line-type series it needs to be set. * * For the `xrange` series type and gantt charts, if the Y axis is a * category axis, the `pointPlacement` applies to the Y axis rather than the * (typically datetime) X axis. * * Defaults to `undefined` in cartesian charts, `"between"` in polar charts. */ pointPlacement?: (number|string); /** * (Highcharts, Highstock, Gantt) The X axis range that each point is valid * for. This determines the width of the column. On a categorized axis, the * range will be 1 by default (one category unit). On linear and datetime * axes, the range will be computed as the distance between the two closest * data points. * * The default `null` means it is computed automatically, but this option * can be used to override the automatic value. */ pointRange?: (number|null); /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, pointStart defines on what value to start. For example, if a * series contains one yearly value starting from 1945, set pointStart to * 1945. */ pointStart?: number; /** * (Highcharts, Highstock, Gantt) A pixel value specifying a fixed width for * each column or bar. When `null`, the width is calculated from the * `pointPadding` and `groupPadding`. */ pointWidth?: number; /** * (Highcharts) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highcharts) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highcharts) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts) If set to `true`, the accessibility module will skip past * the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; /** * (Highcharts, Highstock) Whether to stack the values of each series on top * of each other. Possible values are `undefined` to disable, `"normal"` to * stack by value or `"percent"`. When stacking is enabled, data must be * sorted in ascending X order. A special stacking option is with the * streamgraph series type, where the stacking option is set to `"stream"`. * The second one is `"overlap"`, which only applies to waterfall series. */ stacking?: OptionsStackingValue; states?: PlotVariwideStatesOptions; /** * (Highcharts) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts) The Y axis value to serve as the base for the columns, for * distinguishing between values above and below a threshold. If `null`, the * columns extend from the padding Y axis minimum. */ threshold?: number; /** * (Highcharts) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotVariwideTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highcharts) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotVariwideZonesOptions>; } /** * (Highcharts) Events for each single point. */ export interface PlotVariwidePointEventsOptions { /** * (Highcharts) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts) Callback that fires when the point is dropped. The * parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts) Fires when the point is removed using the `.remove()` * method. One parameter, `event`, is passed to the function. Returning * `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts) Fires when the point is unselected either programmatically * or following a click on the point. One parameter, `event`, is passed to * the function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) Properties for each single point. */ export interface PlotVariwidePointOptions { /** * (Highcharts) Events for each single point. */ events?: PlotVariwidePointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotVariwideStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock, Gantt) Options for the hovered point. These settings * override the normal state options when a point is moused over or touched. */ export interface PlotVariwideStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotVariwideStatesHoverAnimationOptions); /** * (Highcharts, Gantt) A specific border color for the hovered point. * Defaults to inherit the normal state border color. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) How much to brighten the point on * interaction. Requires the main color to be defined in hex or rgb(a) * format. * * In styled mode, the hover brightening is by default replaced with a * fill-opacity set in the `.highcharts-point:hover` rule. */ brightness?: number; /** * (Highcharts, Gantt) A specific color for the hovered point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) Enable separate styles for the hovered * series to visualize that the user hovers either the series itself or the * legend. */ enabled?: boolean; } export interface PlotVariwideStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts) The opposite state of a hover for series. */ export interface PlotVariwideStatesInactiveOptions { animation?: PlotVariwideStatesInactiveAnimationOptions; /** * (Highcharts) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highcharts) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotVariwideStatesNormalOptions { /** * (Highcharts) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotVariwideStatesOptions { /** * (Highcharts, Highstock, Gantt) Options for the hovered point. These * settings override the normal state options when a point is moused over or * touched. */ hover?: PlotVariwideStatesHoverOptions; /** * (Highcharts) The opposite state of a hover for series. */ inactive?: PlotVariwideStatesInactiveOptions; /** * (Highcharts) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotVariwideStatesNormalOptions; /** * (Highcharts, Highstock, Gantt) Options for the selected point. These * settings override the normal state options when a point is selected. */ select?: PlotVariwideStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotVariwideStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock, Gantt) Options for the selected point. These settings * override the normal state options when a point is selected. */ export interface PlotVariwideStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotVariwideStatesSelectAnimationOptions; /** * (Highcharts, Highstock, Gantt) A specific border color for the selected * point. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) A specific color for the selected point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) Enable separate styles for the hovered * series to visualize that the user hovers either the series itself or the * legend. */ enabled?: boolean; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotVariwideTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotVariwideTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotVariwideTooltipDateTimeLabelFormatsOptions|Dictionary<string>); distance?: number; /** * (Highcharts) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts) The name of a symbol to use for the border around the * tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highcharts) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts) How many decimals to show in each series' y value. This is * overridable in each series' tooltip options object. The default is to * preserve all decimals. */ valueDecimals?: number; /** * (Highcharts) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotVariwideZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotVbpAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotVbpAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotVbpAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotVbpAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotVbpConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotVbpConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotVbpConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotVbpConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotVbpConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotVbpConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotVbpConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotVbpDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotVbpDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotVbpDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotVbpDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotVbpDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotVbpDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotVbpDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotVbpDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotVbpEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotVbpLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotVbpLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotVbpLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotVbpLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotVbpLastVisiblePriceLabelOptions; } /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotVbpMarkerOptions { /** * (Highstock) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highstock) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highstock) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. */ radius?: number; /** * (Highstock) States for a single point marker. */ states?: PlotVbpMarkerStatesOptions; /** * (Highstock) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highstock) Animation when hovering over the marker. */ export interface PlotVbpMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highstock) The hover state for a single point marker. */ export interface PlotVbpMarkerStatesHoverOptions { /** * (Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotVbpMarkerStatesHoverAnimationOptions); /** * (Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highstock) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotVbpMarkerStatesInactiveOptions { /** * (Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highstock) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotVbpMarkerStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highstock) States for a single point marker. */ export interface PlotVbpMarkerStatesOptions { /** * (Highstock) The hover state for a single point marker. */ hover?: PlotVbpMarkerStatesHoverOptions; inactive?: PlotVbpMarkerStatesInactiveOptions; /** * (Highstock) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotVbpMarkerStatesNormalOptions; /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotVbpMarkerStatesSelectOptions; } /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotVbpMarkerStatesSelectOptions { /** * (Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Volume By Price indicator. * * This series requires `linkedTo` option to be set. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `vbp` series are defined in plotOptions.vbp. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotVbpOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotVbpAccessibilityOptions); /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotVbpAnimationOptions); /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highstock) Whether to compare indicator to the main series values or * indicator values. */ compareToMain?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotVbpConnectorsOptions; crisp?: boolean; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotVbpDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotVbpDragDropOptions; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotVbpEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotVbpLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotVbpLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotVbpLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The main series ID that indicator will be * based on. Required for this indicator. */ linkedTo?: string; /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotVbpMarkerOptions; /** * (Highstock) The name of the series as shown in the legend, tooltip etc. * If not set, it will be based on a technical indicator type and default * params. */ name?: string; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Paramters used in calculation of regression series' points. */ params?: PlotVbpParamsOptions; /** * (Highstock) Properties for each single point. */ point?: PlotVbpPointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; pointPadding?: number; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotVbpStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotVbpTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highstock) The styles for bars when volume is divided into * positive/negative. */ volumeDivision?: PlotVbpVolumeDivisionOptions; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highstock) The styles for lines which determine price zones. */ zoneLines?: PlotVbpZoneLinesOptions; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotVbpZonesOptions>; } /** * (Highstock) Paramters used in calculation of regression series' points. */ export interface PlotVbpParamsOptions { /** * (Highstock) The number of price zones. */ ranges?: number; /** * (Highstock) The id of volume series which is mandatory. For example using * OHLC data, volumeSeriesID='volume' means the indicator will be calculated * using OHLC and volume values. */ volumeSeriesID?: string; } /** * (Highstock) Events for each single point. */ export interface PlotVbpPointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotVbpPointOptions { /** * (Highstock) Events for each single point. */ events?: PlotVbpPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotVbpStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotVbpStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotVbpStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotVbpStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotVbpStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotVbpStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotVbpStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotVbpStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotVbpStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotVbpStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotVbpStatesHoverMarkerStatesHoverOptions; inactive?: PlotVbpStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotVbpStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotVbpStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotVbpStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotVbpStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotVbpStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotVbpStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotVbpStatesHoverMarkerOptions; } export interface PlotVbpStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotVbpStatesInactiveOptions { animation?: PlotVbpStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotVbpStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotVbpStatesOptions { /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotVbpStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotVbpStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotVbpStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotVbpStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotVbpStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotVbpStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotVbpStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotVbpStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotVbpStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotVbpStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotVbpStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotVbpStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotVbpStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotVbpStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotVbpStatesSelectMarkerStatesHoverOptions; inactive?: PlotVbpStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotVbpStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotVbpStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotVbpStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotVbpStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotVbpStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotVbpStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotVbpStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotVbpTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotVbpTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotVbpTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) Number of decimals in indicator series. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highstock) The styles for bars when volume is divided into * positive/negative. */ export interface PlotVbpVolumeDivisionOptions { /** * (Highstock) Option to control if volume is divided. */ enabled?: boolean; styles?: PlotVbpVolumeDivisionStylesOptions; } export interface PlotVbpVolumeDivisionStylesOptions { /** * (Highstock) Color of negative volume bars. */ negativeColor?: ColorString; /** * (Highstock) Color of positive volume bars. */ positiveColor?: ColorString; } /** * (Highstock) The styles for lines which determine price zones. */ export interface PlotVbpZoneLinesOptions { /** * (Highstock) Enable/disable zone lines. */ enabled?: boolean; /** * (Highstock) Specify the style of zone lines. */ styles?: CSSObject; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotVbpZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts, Highstock) Keyboard navigation for a series */ export interface PlotVectorAccessibilityKeyboardNavigationOptions { /** * (Highcharts, Highstock) Enable/disable keyboard navigation support for a * specific series. */ enabled?: boolean; } /** * (Highcharts, Highstock) Accessibility options for a series. Requires the * accessibility module. */ export interface PlotVectorAccessibilityOptions { /** * (Highcharts, Highstock) Provide a description of the series, announced to * screen readers. */ description?: string; /** * (Highcharts, Highstock) Enable/disable accessibility functionality for a * specific series. */ enabled?: boolean; /** * (Highcharts, Highstock) Expose only the series element to screen readers, * not its points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts, Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotVectorAccessibilityKeyboardNavigationOptions); /** * (Highcharts, Highstock) Formatter function to use instead of the default * for point descriptions. Same as * `accessibility.pointDescriptionFormatter`, but for a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts, Highstock) Enable or disable the initial animation when a series * is displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotVectorAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotVectorConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotVectorConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotVectorConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotVectorConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotVectorConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotVectorConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotVectorConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highcharts, Highstock) Options for the drag handles. */ export interface PlotVectorDragDropDragHandleOptions { /** * (Highcharts, Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts, Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The mouse cursor to use for the drag handles. By * default this is intelligently switching between `ew-resize` and * `ns-resize` depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts, Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts, Highstock) Function to define the SVG path to use for the * drag handles. Takes the point as argument. Should return an SVG path in * array format. The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts, Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box default state. */ export interface PlotVectorDragDropGuideBoxDefaultOptions { /** * (Highcharts, Highstock) CSS class name of the guide box in this state. * Defaults to `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts, Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Guide box cursor. */ cursor?: string; /** * (Highcharts, Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts, Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts, Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box. The guide box has * one state by default, the `default` state. */ export interface PlotVectorDragDropGuideBoxOptions { /** * (Highcharts, Highstock) Style options for the guide box default state. */ default?: PlotVectorDragDropGuideBoxDefaultOptions; } /** * (Highcharts, Highstock) The draggable-points module allows points to be moved * around or modified in the chart. In addition to the options mentioned under * the `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotVectorDragDropOptions { /** * (Highcharts, Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts, Highstock) Enable dragging in the Y dimension. Note that * this is not supported for TreeGrid axes (the default axis type in Gantt * charts). */ draggableY?: boolean; /** * (Highcharts, Highstock) Options for the drag handles. */ dragHandle?: PlotVectorDragDropDragHandleOptions; /** * (Highcharts, Highstock) Set the maximum X value the points can be moved * to. */ dragMaxX?: number; /** * (Highcharts, Highstock) Set the maximum Y value the points can be moved * to. */ dragMaxY?: number; /** * (Highcharts, Highstock) Set the minimum X value the points can be moved * to. */ dragMinX?: number; /** * (Highcharts, Highstock) Set the minimum Y value the points can be moved * to. */ dragMinY?: number; /** * (Highcharts, Highstock) The X precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionX?: number; /** * (Highcharts, Highstock) The Y precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionY?: number; /** * (Highcharts, Highstock) The amount of pixels to drag the pointer before * it counts as a drag operation. This prevents drag/drop to fire when just * clicking or selecting points. */ dragSensitivity?: number; /** * (Highcharts, Highstock) Group the points by a property. Points with the * same property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts, Highstock) Style options for the guide box. The guide box * has one state by default, the `default` state. */ guideBox?: (PlotVectorDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts, Highstock) Update points as they are dragged. If false, a * guide box is drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock) General event handlers for the series items. These * event hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotVectorEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts, Highstock) Fires when the checkbox next to the series' name * in the legend is clicked. One parameter, `event`, is passed to the * function. The state of the checkbox is found by `event.checked`. The * checked item is found by `event.item`. Return `false` to prevent the * default action which is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is clicked. One parameter, * `event`, is passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is hidden after chart * generation time, either by clicking the legend item or by calling * `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts, Highstock) Fires when the legend item belonging to the * series is clicked. One parameter, `event`, is passed to the function. The * default action is to toggle the visibility of the series. This can be * prevented by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse leaves the graph. One * parameter, `event`, is passed to the function, containing common event * information. If the stickyTracking option is true, `mouseOut` doesn't * happen before the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse enters the graph. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is shown after chart * generation time, either by clicking the legend item or by calling * `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotVectorLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotVectorLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotVectorLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotVectorLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotVectorLastVisiblePriceLabelOptions; } /** * (Highcharts, Highstock) A vector plot is a type of cartesian chart where each * point has an X and Y position, a length and a direction. Vectors are drawn as * arrows. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `vector` series are defined in plotOptions.vector. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotVectorOptions { /** * (Highcharts, Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotVectorAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highcharts, Highstock) Allow this series' points to be selected by * clicking on the graphic (columns, point markers, pie slices, map areas * etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts, Highstock) Enable or disable the initial animation when a * series is displayed. The animation can also be set as a configuration * object. Please note that this option only applies to the initial * animation of the series itself. For other animations, see chart.animation * and the animation parameter under the API methods. The following * properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotVectorAnimationOptions); /** * (Highcharts, Highstock) For some series, there is a limit that shuts down * initial animation by default when the total number of points in the chart * is too high. For example, for a column chart and its derivatives, * animation does not run if there is more than 250 points totally. To * disable this cap, set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highcharts, Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highcharts, Highstock) An additional class name to apply to the series' * graphical elements. This option does not replace default class names of * the graphical element. */ className?: string; /** * (Highcharts, Highstock) Disable this option to allow series rendering in * the whole plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts, Highstock) The main color of the series. In line type series * it applies to the line and the point markers unless otherwise specified. * In bar type series it applies to the bars unless a color is specified per * point. The default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts, Highstock) Styled mode only. A specific color index to use * for the series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotVectorConnectorsOptions; /** * (Highcharts, Highstock) You can set the cursor to "pointer" if you have * click events attached to the series, to signal to the user that the * points and lines can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highcharts, Highstock) Options for the series data labels, appearing * next to each data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts, Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts, Highstock) The draggable-points module allows points to be * moved around or modified in the chart. In addition to the options * mentioned under the `dragDrop` API structure, the module fires three * events, point.dragStart, point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotVectorDragDropOptions; /** * (Highcharts, Highstock) Enable or disable the mouse tracking for a * specific series. This includes point tooltips and click events on graphs * and points. For large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts, Highstock) General event handlers for the series items. * These event hooks can also be attached to the series at run time using * the `Highcharts.addEvent` function. */ events?: PlotVectorEventsOptions; /** * (Highcharts, Highstock) By default, series are exposed to screen readers * as regions. By enabling this option, the series element itself will be * exposed in the same way as the data points. This is useful if the series * is not used as a grouping entity in the chart, but you still want to * attach a description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highcharts, Highstock) Determines whether the series should look for the * nearest point in both dimensions or just the x-dimension when hovering * the series. Defaults to `'xy'` for scatter series and `'x'` for most * other series. If the data has duplicate x-values, it is recommended to * set this to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highcharts, Highstock) Export-data module required. When set to `false` * will prevent the series data from being included in any form of data * export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts, Highstock) An array specifying which option maps to which * key in the data point array. This makes it convenient to work with * unstructured data arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotVectorLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotVectorLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotVectorLastVisiblePriceOptions; /** * (Highcharts, Highstock) The line width for each vector arrow. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts, Highstock) The color for the parts of the graph or points * that are below the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Opacity of a series parts: line, fill (e.g. area) * and dataLabels. */ opacity?: number; /** * (Highcharts, Highstock) Properties for each single point. */ point?: PlotVectorPointOptions; /** * (Highcharts, Highstock) Same as accessibility.pointDescriptionFormatter, * but for an individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, `pointInterval` defines the interval of the x values. For * example, if a series contains one value every decade starting from year * 0, set `pointInterval` to `10`. In true `datetime` axes, the * `pointInterval` is set in milliseconds. * * It can be also be combined with `pointIntervalUnit` to draw irregular * time intervals. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointInterval?: number; /** * (Highcharts, Highstock, Gantt) On datetime series, this allows for * setting the pointInterval to irregular time units, `day`, `month` and * `year`. A day is usually the same as 24 hours, but `pointIntervalUnit` * also takes the DST crossover into consideration when dealing with local * time. Combine this option with `pointInterval` to draw weeks, quarters, 6 * months, 10 years etc. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointIntervalUnit?: OptionsPointIntervalUnitValue; /** * (Highstock) The width of each point on the x axis. For example in a * column chart with one value each day, the pointRange would be 1 day (= 24 * * 3600 * * * 1000 milliseconds). This is normally computed automatically, but this * option can be used to override the automatic value. */ pointRange?: number; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, pointStart defines on what value to start. For example, if a * series contains one yearly value starting from 1945, set pointStart to * 1945. */ pointStart?: number; /** * (Highcharts, Highstock) What part of the vector it should be rotated * around. Can be one of `start`, `center` and `end`. When `start`, the * vectors will start from the given [x, y] position, and when `end` the * vectors will end in the [x, y] position. */ rotationOrigin?: OptionsRotationOriginValue; /** * (Highcharts, Highstock) Whether to select the series initially. If * `showCheckbox` is true, the checkbox next to the series name in the * legend will be checked for a selected series. */ selected?: boolean; /** * (Highcharts, Highstock) If true, a checkbox is displayed next to the * legend item to allow selecting the series. The state of the checkbox is * determined by the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts, Highstock) Whether to display this particular series or * series type in the legend. The default value is `true` for standalone * series, `false` for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts, Highstock) If set to `true`, the accessibility module will * skip past the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotVectorStatesOptions; /** * (Highcharts, Highstock) Sticky tracking of mouse events. When true, the * `mouseOut` event on a series isn't triggered until the mouse moves over * another series, or out of the plot area. When false, the `mouseOut` event * on a series is triggered when the mouse leaves the area around the * series' graph or markers. This also implies the tooltip. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highcharts, Highstock) A configuration object for the tooltip rendering * of each single series. Properties are inherited from tooltip. Overridable * properties are `headerFormat`, `pointFormat`, `yDecimals`, `xDateFormat`, * `yPrefix` and `ySuffix`. Unlike other series, in a scatter plot the * series.name by default shows in the headerFormat and point.x and point.y * in the pointFormat. */ tooltip?: PlotVectorTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highcharts, Highstock) Maximum length of the arrows in the vector plot. * The individual arrow length is computed between 0 and this value. */ vectorLength?: number; /** * (Highcharts, Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotVectorZonesOptions>; } /** * (Highcharts, Highstock) Events for each single point. */ export interface PlotVectorPointEventsOptions { /** * (Highcharts, Highstock) Fires when a point is clicked. One parameter, * `event`, is passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock) Callback that fires while dragging a point. The * mouse event is passed in as parameter. The original data can be accessed * from `e.origin`, and the new point values can be accessed from * `e.newPoints`. If there is only a single point being updated, it can be * accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock) Callback that fires when starting to drag a * point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock) Callback that fires when the point is dropped. * The parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse leaves the area close to the * point. One parameter, `event`, is passed to the function, containing * common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse enters the area close to the * point. One parameter, `event`, is passed to the function, containing * common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is updated programmatically * through the `.update()` method. One parameter, `event`, is passed to the * function. The new point options can be accessed through `event.options`. * Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts, Highstock) Properties for each single point. */ export interface PlotVectorPointOptions { /** * (Highcharts, Highstock) Events for each single point. */ events?: PlotVectorPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotVectorStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotVectorStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotVectorStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotVectorStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotVectorStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotVectorStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotVectorStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotVectorStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotVectorStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotVectorStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotVectorStatesHoverMarkerStatesHoverOptions; inactive?: PlotVectorStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotVectorStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotVectorStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotVectorStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts, Highstock) Options for the hovered series. These settings * override the normal state options when a series is moused over or touched. */ export interface PlotVectorStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotVectorStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Enable separate styles for the hovered series to * visualize that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotVectorStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) Additonal line width for the vector errors when * they are hovered. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotVectorStatesHoverMarkerOptions; } export interface PlotVectorStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The opposite state of a hover for series. */ export interface PlotVectorStatesInactiveOptions { animation?: PlotVectorStatesInactiveAnimationOptions; /** * (Highcharts, Highstock) Opacity of series elements (dataLabels, line, * area). */ opacity?: number; } /** * (Highcharts, Highstock) The normal state of a series, or for point items in * column, pie and similar series. Currently only used for setting animation * when returning to normal state from hover. */ export interface PlotVectorStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotVectorStatesOptions { /** * (Highcharts, Highstock) Options for the hovered series. These settings * override the normal state options when a series is moused over or * touched. */ hover?: PlotVectorStatesHoverOptions; /** * (Highcharts, Highstock) The opposite state of a hover for series. */ inactive?: PlotVectorStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a series, or for point items * in column, pie and similar series. Currently only used for setting * animation when returning to normal state from hover. */ normal?: PlotVectorStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotVectorStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotVectorStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotVectorStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotVectorStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotVectorStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotVectorStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotVectorStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotVectorStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotVectorStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotVectorStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotVectorStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotVectorStatesSelectMarkerStatesHoverOptions; inactive?: PlotVectorStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotVectorStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotVectorStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotVectorStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotVectorStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotVectorStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotVectorStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotVectorStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotVectorTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts, Highstock) A configuration object for the tooltip rendering of * each single series. Properties are inherited from tooltip. Overridable * properties are `headerFormat`, `pointFormat`, `yDecimals`, `xDateFormat`, * `yPrefix` and `ySuffix`. Unlike other series, in a scatter plot the * series.name by default shows in the headerFormat and point.x and point.y in * the pointFormat. */ export interface PlotVectorTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotVectorTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highcharts, Highstock) Whether the tooltip should follow the mouse as it * moves across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts, Highstock) Whether the tooltip should update as the finger * moves on a touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts, Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts, Highstock) The HTML of the tooltip header line. Variables * are enclosed by curly brackets. Available variables are `point.key`, * `series.name`, `series.color` and other members from the `point` and * `series` objects. The `point.key` variable contains the category name, x * value or datetime string depending on the type of axis. For datetime * axes, the `point.key` date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts, Highstock) The name of a symbol to use for the border around * the tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts, Highstock) The number of milliseconds to wait until the * tooltip is hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts, Highstock) The HTML of the null point's line in the tooltip. * Works analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts, Highstock) Callback function to format the text of the * tooltip for visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts, Highstock) Whether to allow the tooltip to render outside * the chart's SVG element box. By default (`false`), the tooltip is * rendered within the chart's SVG element, which results in the tooltip * being aligned inside the chart area. For small charts, this may result in * clipping or overlapping. When `true`, a separate SVG element is created * and overlaid on the page, allowing the tooltip to be aligned inside the * page itself. */ outside?: boolean; /** * (Highcharts, Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts, Highstock) The HTML of the point's line in the tooltip. * Variables are enclosed by curly brackets. Available variables are * point.x, point.y, series. name and series.color and other properties on * the same form. Furthermore, `point.y` can be extended by the * `tooltip.valuePrefix` and `tooltip.valueSuffix` variables. This can also * be overridden for each series, which makes it a good hook for displaying * units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts, Highstock) A callback function for formatting the HTML * output for a single point in the tooltip. Like the `pointFormat` string, * but with more flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts, Highstock) How many decimals to show in each series' y * value. This is overridable in each series' tooltip options object. The * default is to preserve all decimals. */ valueDecimals?: number; /** * (Highcharts, Highstock) A string to prepend to each series' y value. * Overridable in each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts, Highstock) A string to append to each series' y value. * Overridable in each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotVectorZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts) Keyboard navigation for a series */ export interface PlotVennAccessibilityKeyboardNavigationOptions { /** * (Highcharts) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highcharts) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotVennAccessibilityOptions { /** * (Highcharts) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highcharts) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highcharts) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotVennAccessibilityKeyboardNavigationOptions); /** * (Highcharts) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotVennAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotVennConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotVennConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotVennConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotVennConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotVennConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotVennConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotVennConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotVennDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts) Options for the drag handles. */ export interface PlotVennDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface PlotVennDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotVennDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: PlotVennDragDropGuideBoxDefaultOptions; } /** * (Highcharts) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotVennDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: PlotVennDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotVennDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotVennEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotVennLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotVennLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotVennLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotVennLastVisiblePriceLabelOptions; } /** * (Highcharts) A Venn diagram displays all possible logical relations between a * collection of different sets. The sets are represented by circles, and the * relation between the sets are displayed by the overlap or lack of overlap * between them. The venn diagram is a special case of Euler diagrams, which can * also be displayed by this series type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `venn` series are defined in plotOptions.venn. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotVennOptions { /** * (Highcharts) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotVennAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highcharts) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotVennAnimationOptions); /** * (Highcharts) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highcharts) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: string; borderDashStyle?: string; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; brighten?: number; /** * (Highcharts) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highcharts) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; colorByPoint?: boolean; /** * (Highcharts) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotVennConnectorsOptions; /** * (Highcharts) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highcharts) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotVennDataGroupingOptions; /** * (Highcharts) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotVennDragDropOptions; /** * (Highcharts) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotVennEventsOptions; /** * (Highcharts) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts) Export-data module required. When set to `false` will * prevent the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts) An array specifying which option maps to which key in the * data point array. This makes it convenient to work with unstructured data * arrays from different sources. */ keys?: Array<string>; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotVennLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotVennLastVisiblePriceOptions; marker?: boolean; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highcharts) Properties for each single point. */ point?: PlotVennPointOptions; /** * (Highcharts) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) The width of each point on the x axis. For example in a * column chart with one value each day, the pointRange would be 1 day (= 24 * * 3600 * * * 1000 milliseconds). This is normally computed automatically, but this * option can be used to override the automatic value. */ pointRange?: number; /** * (Highcharts) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highcharts) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts) If set to `true`, the accessibility module will skip past * the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; states?: PlotVennStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highcharts, Highstock) Sticky tracking of mouse events. When true, the * `mouseOut` event on a series isn't triggered until the mouse moves over * another series, or out of the plot area. When false, the `mouseOut` event * on a series is triggered when the mouse leaves the area around the * series' graph or markers. This also implies the tooltip. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) A configuration object for the tooltip rendering * of each single series. Properties are inherited from tooltip. Overridable * properties are `headerFormat`, `pointFormat`, `yDecimals`, `xDateFormat`, * `yPrefix` and `ySuffix`. Unlike other series, in a scatter plot the * series.name by default shows in the headerFormat and point.x and point.y * in the pointFormat. */ tooltip?: PlotVennTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highcharts) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; } /** * (Highcharts) Events for each single point. */ export interface PlotVennPointEventsOptions { /** * (Highcharts) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts) Callback that fires when the point is dropped. The * parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts) Fires when the point is removed using the `.remove()` * method. One parameter, `event`, is passed to the function. Returning * `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts) Fires when the point is unselected either programmatically * or following a click on the point. One parameter, `event`, is passed to * the function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) Properties for each single point. */ export interface PlotVennPointOptions { /** * (Highcharts) Events for each single point. */ events?: PlotVennPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotVennStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotVennStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotVennStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotVennStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotVennStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotVennStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotVennStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotVennStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotVennStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotVennStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotVennStatesHoverMarkerStatesHoverOptions; inactive?: PlotVennStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotVennStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotVennStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotVennStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotVennStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotVennStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: string; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (boolean|PlotVennStatesHoverHaloOptions); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotVennStatesHoverMarkerOptions; opacity?: number; } export interface PlotVennStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts) The opposite state of a hover for series. */ export interface PlotVennStatesInactiveOptions { animation?: PlotVennStatesInactiveAnimationOptions; /** * (Highcharts) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highcharts) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotVennStatesNormalOptions { /** * (Highcharts) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotVennStatesOptions { /** * (Highcharts) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotVennStatesHoverOptions; /** * (Highcharts) The opposite state of a hover for series. */ inactive?: PlotVennStatesInactiveOptions; /** * (Highcharts) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotVennStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotVennStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotVennStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotVennStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotVennStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotVennStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotVennStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotVennStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotVennStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotVennStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotVennStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotVennStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotVennStatesSelectMarkerStatesHoverOptions; inactive?: PlotVennStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotVennStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotVennStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotVennStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotVennStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|PlotVennStatesSelectAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: string; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: string; /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotVennStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotVennStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotVennTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts, Highstock) A configuration object for the tooltip rendering of * each single series. Properties are inherited from tooltip. Overridable * properties are `headerFormat`, `pointFormat`, `yDecimals`, `xDateFormat`, * `yPrefix` and `ySuffix`. Unlike other series, in a scatter plot the * series.name by default shows in the headerFormat and point.x and point.y in * the pointFormat. */ export interface PlotVennTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotVennTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highcharts, Highstock) Whether the tooltip should follow the mouse as it * moves across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts, Highstock) Whether the tooltip should update as the finger * moves on a touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts, Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts, Highstock) The HTML of the tooltip header line. Variables * are enclosed by curly brackets. Available variables are `point.key`, * `series.name`, `series.color` and other members from the `point` and * `series` objects. The `point.key` variable contains the category name, x * value or datetime string depending on the type of axis. For datetime * axes, the `point.key` date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts, Highstock) The name of a symbol to use for the border around * the tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts, Highstock) The number of milliseconds to wait until the * tooltip is hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts, Highstock) The HTML of the null point's line in the tooltip. * Works analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts, Highstock) Callback function to format the text of the * tooltip for visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts, Highstock) Whether to allow the tooltip to render outside * the chart's SVG element box. By default (`false`), the tooltip is * rendered within the chart's SVG element, which results in the tooltip * being aligned inside the chart area. For small charts, this may result in * clipping or overlapping. When `true`, a separate SVG element is created * and overlaid on the page, allowing the tooltip to be aligned inside the * page itself. */ outside?: boolean; /** * (Highcharts, Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts, Highstock) The HTML of the point's line in the tooltip. * Variables are enclosed by curly brackets. Available variables are * point.x, point.y, series. name and series.color and other properties on * the same form. Furthermore, `point.y` can be extended by the * `tooltip.valuePrefix` and `tooltip.valueSuffix` variables. This can also * be overridden for each series, which makes it a good hook for displaying * units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts, Highstock) A callback function for formatting the HTML * output for a single point in the tooltip. Like the `pointFormat` string, * but with more flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts, Highstock) How many decimals to show in each series' y * value. This is overridable in each series' tooltip options object. The * default is to preserve all decimals. */ valueDecimals?: number; /** * (Highcharts, Highstock) A string to prepend to each series' y value. * Overridable in each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts, Highstock) A string to append to each series' y value. * Overridable in each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotVwapAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotVwapAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotVwapAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotVwapAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotVwapConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotVwapConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotVwapConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotVwapConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotVwapConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotVwapConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotVwapConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotVwapDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotVwapDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotVwapDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotVwapDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotVwapDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotVwapDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotVwapDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotVwapDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotVwapEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotVwapLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotVwapLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotVwapLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotVwapLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotVwapLastVisiblePriceLabelOptions; } /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotVwapMarkerOptions { /** * (Highstock) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highstock) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highstock) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. */ radius?: number; /** * (Highstock) States for a single point marker. */ states?: PlotVwapMarkerStatesOptions; /** * (Highstock) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highstock) Animation when hovering over the marker. */ export interface PlotVwapMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highstock) The hover state for a single point marker. */ export interface PlotVwapMarkerStatesHoverOptions { /** * (Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotVwapMarkerStatesHoverAnimationOptions); /** * (Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highstock) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotVwapMarkerStatesInactiveOptions { /** * (Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highstock) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotVwapMarkerStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highstock) States for a single point marker. */ export interface PlotVwapMarkerStatesOptions { /** * (Highstock) The hover state for a single point marker. */ hover?: PlotVwapMarkerStatesHoverOptions; inactive?: PlotVwapMarkerStatesInactiveOptions; /** * (Highstock) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotVwapMarkerStatesNormalOptions; /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotVwapMarkerStatesSelectOptions; } /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotVwapMarkerStatesSelectOptions { /** * (Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Volume Weighted Average Price indicator. * * This series requires `linkedTo` option to be set. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `vwap` series are defined in plotOptions.vwap. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotVwapOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotVwapAccessibilityOptions); /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotVwapAnimationOptions); /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highstock) Whether to compare indicator to the main series values or * indicator values. */ compareToMain?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotVwapConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotVwapDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotVwapDragDropOptions; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotVwapEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotVwapLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotVwapLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotVwapLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The main series ID that indicator will be * based on. Required for this indicator. */ linkedTo?: string; /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotVwapMarkerOptions; /** * (Highstock) The name of the series as shown in the legend, tooltip etc. * If not set, it will be based on a technical indicator type and default * params. */ name?: string; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Paramters used in calculation of regression series' points. */ params?: PlotVwapParamsOptions; /** * (Highstock) Properties for each single point. */ point?: PlotVwapPointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotVwapStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotVwapTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotVwapZonesOptions>; } /** * (Highstock) Paramters used in calculation of regression series' points. */ export interface PlotVwapParamsOptions { /** * (Highstock) The base period for indicator calculations. This is the * number of data points which are taken into account for the indicator * calculations. */ period?: number; /** * (Highstock) The id of volume series which is mandatory. For example using * OHLC data, volumeSeriesID='volume' means the indicator will be calculated * using OHLC and volume values. */ volumeSeriesID?: string; } /** * (Highstock) Events for each single point. */ export interface PlotVwapPointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotVwapPointOptions { /** * (Highstock) Events for each single point. */ events?: PlotVwapPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotVwapStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotVwapStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotVwapStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotVwapStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotVwapStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotVwapStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotVwapStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotVwapStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotVwapStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotVwapStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotVwapStatesHoverMarkerStatesHoverOptions; inactive?: PlotVwapStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotVwapStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotVwapStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotVwapStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotVwapStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotVwapStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotVwapStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotVwapStatesHoverMarkerOptions; } export interface PlotVwapStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotVwapStatesInactiveOptions { animation?: PlotVwapStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotVwapStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotVwapStatesOptions { /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotVwapStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotVwapStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotVwapStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotVwapStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotVwapStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotVwapStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotVwapStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotVwapStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotVwapStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotVwapStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotVwapStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotVwapStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotVwapStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotVwapStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotVwapStatesSelectMarkerStatesHoverOptions; inactive?: PlotVwapStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotVwapStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotVwapStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotVwapStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotVwapStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotVwapStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotVwapStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotVwapStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotVwapTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotVwapTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotVwapTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) Number of decimals in indicator series. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotVwapZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts) Keyboard navigation for a series */ export interface PlotWaterfallAccessibilityKeyboardNavigationOptions { /** * (Highcharts) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highcharts) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotWaterfallAccessibilityOptions { /** * (Highcharts) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highcharts) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highcharts) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotWaterfallAccessibilityKeyboardNavigationOptions); /** * (Highcharts) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotWaterfallAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotWaterfallConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotWaterfallConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotWaterfallConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotWaterfallConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotWaterfallConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotWaterfallConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotWaterfallConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotWaterfallDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. Defaults to `10`. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts) Options for the drag handles. */ export interface PlotWaterfallDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface PlotWaterfallDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotWaterfallDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: PlotWaterfallDragDropGuideBoxDefaultOptions; } /** * (Highcharts) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotWaterfallDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: PlotWaterfallDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotWaterfallDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotWaterfallEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotWaterfallLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotWaterfallLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotWaterfallLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotWaterfallLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotWaterfallLastVisiblePriceLabelOptions; } /** * (Highcharts) A waterfall chart displays sequentially introduced positive or * negative values in cumulative columns. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `waterfall` series are defined in plotOptions.waterfall. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotWaterfallOptions { /** * (Highcharts) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotWaterfallAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highcharts) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotWaterfallAnimationOptions); /** * (Highcharts) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highcharts) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highcharts) The color of the border of each waterfall column. * * In styled mode, the border stroke can be set with the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highcharts, Highstock, Gantt) The corner radius of the border * surrounding each column or bar. */ borderRadius?: number; /** * (Highcharts, Highstock, Gantt) The width of the border surrounding each * column or bar. Defaults to `1` when there is room for a border, but to * `0` when the columns are so dense that a border would cover the next * column. * * In styled mode, the stroke width can be set with the `.highcharts-point` * rule. */ borderWidth?: number; /** * (Highcharts) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highcharts) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts, Highstock, Gantt) When using automatic point colors pulled * from the global colors or series-specific plotOptions.column.colors * collections, this option determines whether the chart should receive one * color per series or one color per point. * * In styled mode, the `colors` or `series.colors` arrays are not supported, * and instead this option gives the points individual color class names on * the form `highcharts-color-{n}`. */ colorByPoint?: boolean; /** * (Highcharts) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) A series specific or series type specific * color set to apply instead of the global colors when colorByPoint is * true. */ colors?: Array<(ColorString|GradientColorObject|PatternObject)>; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotWaterfallConnectorsOptions; /** * (Highcharts, Highstock, Gantt) When true, each column edge is rounded to * its nearest pixel in order to render sharp on screen. In some cases, when * there are a lot of densely packed columns, this leads to visible * difference in column widths or distance between columns. In these cases, * setting `crisp` to `false` may look better, even though each column is * rendered blurry. */ crisp?: boolean; /** * (Highcharts, Highstock, Gantt) When the series contains less points than * the crop threshold, all points are drawn, event if the points fall * outside the visible plot area at the current zoom. The advantage of * drawing all points (including markers and columns), is that animation is * performed on updates. On the other hand, when the series contains more * points than the crop threshold, the series data is cropped to only * contain points that fall within the plot area. The advantage of cropping * away invisible points is to increase performance on large series. */ cropThreshold?: number; /** * (Highcharts) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highcharts) A name for the dash style to use for the line connecting the * columns of the waterfall series. Possible values: Dash, DashDot, Dot, * LongDash, LongDashDot, LongDashDotDot, ShortDash, ShortDashDot, * ShortDashDotDot, ShortDot, Solid * * In styled mode, the stroke dash-array can be set with the * `.highcharts-graph` class. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotWaterfallDataGroupingOptions; /** * (Highcharts) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) Depth of the columns in a 3D column chart. Requires * `highcharts-3d.js`. */ depth?: number; /** * (Highcharts) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotWaterfallDragDropOptions; /** * (Highcharts) 3D columns only. The color of the edges. Similar to * `borderColor`, except it defaults to the same color as the column. */ edgeColor?: ColorString; /** * (Highcharts) 3D columns only. The width of the colored edges. */ edgeWidth?: number; /** * (Highcharts) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotWaterfallEventsOptions; /** * (Highcharts) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highcharts) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highcharts, Highstock, Gantt) Whether to group non-stacked columns or to * let them render independent of each other. Non-grouped columns will be * laid out individually and overlap each other. */ grouping?: boolean; /** * (Highcharts, Highstock, Gantt) Padding between each value groups, in x * axis units. */ groupPadding?: number; /** * (Highcharts) The spacing between columns on the Z Axis in a 3D chart. * Requires `highcharts-3d.js`. */ groupZPadding?: number; /** * (Highcharts) Export-data module required. When set to `false` will * prevent the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts) An array specifying which option maps to which key in the * data point array. This makes it convenient to work with unstructured data * arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotWaterfallLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotWaterfallLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotWaterfallLastVisiblePriceOptions; /** * (Highcharts) The color of the line that connects columns in a waterfall * series. * * In styled mode, the stroke can be set with the `.highcharts-graph` class. */ lineColor?: ColorString; /** * (Highcharts) The width of the line connecting waterfall columns. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts, Highstock, Gantt) The maximum allowed pixel width for a * column, translated to the height of a bar in a bar chart. This prevents * the columns from becoming too wide when there is a small number of points * in the chart. */ maxPointWidth?: number; /** * (Highcharts, Highstock, Gantt) The minimal height for a column or width * for a bar. By default, 0 values are not shown. To visualize a 0 (or close * to zero) point, set the minimal point length to a pixel value like 3\. In * stacked column charts, minPointLength might not be respected for tightly * packed values. */ minPointLength?: number; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts) The color for the parts of the graph or points that are * below the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highcharts) Properties for each single point. */ point?: PlotWaterfallPointOptions; /** * (Highcharts) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, `pointInterval` defines the interval of the x values. For * example, if a series contains one value every decade starting from year * 0, set `pointInterval` to `10`. In true `datetime` axes, the * `pointInterval` is set in milliseconds. * * It can be also be combined with `pointIntervalUnit` to draw irregular * time intervals. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointInterval?: number; /** * (Highcharts, Highstock, Gantt) On datetime series, this allows for * setting the pointInterval to irregular time units, `day`, `month` and * `year`. A day is usually the same as 24 hours, but `pointIntervalUnit` * also takes the DST crossover into consideration when dealing with local * time. Combine this option with `pointInterval` to draw weeks, quarters, 6 * months, 10 years etc. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointIntervalUnit?: OptionsPointIntervalUnitValue; /** * (Highcharts, Highstock, Gantt) Padding between each column or bar, in x * axis units. */ pointPadding?: number; /** * (Highcharts, Highstock, Gantt) Possible values: `"on"`, `"between"`, * `number`. * * In a column chart, when pointPlacement is `"on"`, the point will not * create any padding of the X axis. In a polar column chart this means that * the first column points directly north. If the pointPlacement is * `"between"`, the columns will be laid out between ticks. This is useful * for example for visualising an amount between two points in time or in a * certain sector of a polar chart. * * Since Highcharts 3.0.2, the point placement can also be numeric, where 0 * is on the axis value, -0.5 is between this value and the previous, and * 0.5 is between this value and the next. Unlike the textual options, * numeric point placement options won't affect axis padding. * * Note that pointPlacement needs a pointRange to work. For column series * this is computed, but for line-type series it needs to be set. * * For the `xrange` series type and gantt charts, if the Y axis is a * category axis, the `pointPlacement` applies to the Y axis rather than the * (typically datetime) X axis. * * Defaults to `undefined` in cartesian charts, `"between"` in polar charts. */ pointPlacement?: (number|string); /** * (Highcharts, Highstock, Gantt) The X axis range that each point is valid * for. This determines the width of the column. On a categorized axis, the * range will be 1 by default (one category unit). On linear and datetime * axes, the range will be computed as the distance between the two closest * data points. * * The default `null` means it is computed automatically, but this option * can be used to override the automatic value. */ pointRange?: (number|null); /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, pointStart defines on what value to start. For example, if a * series contains one yearly value starting from 1945, set pointStart to * 1945. */ pointStart?: number; /** * (Highcharts, Highstock, Gantt) A pixel value specifying a fixed width for * each column or bar. When `null`, the width is calculated from the * `pointPadding` and `groupPadding`. */ pointWidth?: number; /** * (Highcharts) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highcharts) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highcharts) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts) If set to `true`, the accessibility module will skip past * the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; /** * (Highcharts, Highstock) Whether to stack the values of each series on top * of each other. Possible values are `undefined` to disable, `"normal"` to * stack by value or `"percent"`. When stacking is enabled, data must be * sorted in ascending X order. A special stacking option is with the * streamgraph series type, where the stacking option is set to `"stream"`. * The second one is `"overlap"`, which only applies to waterfall series. */ stacking?: OptionsStackingValue; states?: PlotWaterfallStatesOptions; /** * (Highcharts) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts) The Y axis value to serve as the base for the columns, for * distinguishing between values above and below a threshold. If `null`, the * columns extend from the padding Y axis minimum. */ threshold?: number; /** * (Highcharts) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotWaterfallTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highcharts) The color used specifically for positive point columns. When * not specified, the general series color is used. * * In styled mode, the waterfall colors can be set with the * `.highcharts-point-negative`, `.highcharts-sum` and * `.highcharts-intermediate-sum` classes. */ upColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotWaterfallZonesOptions>; } /** * (Highcharts) Events for each single point. */ export interface PlotWaterfallPointEventsOptions { /** * (Highcharts) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts) Callback that fires when the point is dropped. The * parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts) Fires when the point is removed using the `.remove()` * method. One parameter, `event`, is passed to the function. Returning * `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts) Fires when the point is unselected either programmatically * or following a click on the point. One parameter, `event`, is passed to * the function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) Properties for each single point. */ export interface PlotWaterfallPointOptions { /** * (Highcharts) Events for each single point. */ events?: PlotWaterfallPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotWaterfallStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock, Gantt) Options for the hovered point. These settings * override the normal state options when a point is moused over or touched. */ export interface PlotWaterfallStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotWaterfallStatesHoverAnimationOptions); /** * (Highcharts, Gantt) A specific border color for the hovered point. * Defaults to inherit the normal state border color. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) How much to brighten the point on * interaction. Requires the main color to be defined in hex or rgb(a) * format. * * In styled mode, the hover brightening is by default replaced with a * fill-opacity set in the `.highcharts-point:hover` rule. */ brightness?: number; /** * (Highcharts, Gantt) A specific color for the hovered point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) Enable separate styles for the hovered * series to visualize that the user hovers either the series itself or the * legend. */ enabled?: boolean; lineWidthPlus?: number; } export interface PlotWaterfallStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts) The opposite state of a hover for series. */ export interface PlotWaterfallStatesInactiveOptions { animation?: PlotWaterfallStatesInactiveAnimationOptions; /** * (Highcharts) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highcharts) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotWaterfallStatesNormalOptions { /** * (Highcharts) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotWaterfallStatesOptions { /** * (Highcharts, Highstock, Gantt) Options for the hovered point. These * settings override the normal state options when a point is moused over or * touched. */ hover?: PlotWaterfallStatesHoverOptions; /** * (Highcharts) The opposite state of a hover for series. */ inactive?: PlotWaterfallStatesInactiveOptions; /** * (Highcharts) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotWaterfallStatesNormalOptions; /** * (Highcharts, Highstock, Gantt) Options for the selected point. These * settings override the normal state options when a point is selected. */ select?: PlotWaterfallStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotWaterfallStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock, Gantt) Options for the selected point. These settings * override the normal state options when a point is selected. */ export interface PlotWaterfallStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotWaterfallStatesSelectAnimationOptions; /** * (Highcharts, Highstock, Gantt) A specific border color for the selected * point. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) A specific color for the selected point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) Enable separate styles for the hovered * series to visualize that the user hovers either the series itself or the * legend. */ enabled?: boolean; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotWaterfallTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotWaterfallTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotWaterfallTooltipDateTimeLabelFormatsOptions|Dictionary<string>); distance?: number; /** * (Highcharts) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts) The name of a symbol to use for the border around the * tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highcharts) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts) How many decimals to show in each series' y value. This is * overridable in each series' tooltip options object. The default is to * preserve all decimals. */ valueDecimals?: number; /** * (Highcharts) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotWaterfallZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotWilliamsrAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotWilliamsrAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotWilliamsrAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotWilliamsrAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotWilliamsrConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotWilliamsrConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotWilliamsrConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotWilliamsrConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotWilliamsrConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotWilliamsrConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotWilliamsrConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotWilliamsrDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotWilliamsrDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotWilliamsrDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotWilliamsrDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotWilliamsrDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotWilliamsrDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotWilliamsrDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotWilliamsrDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotWilliamsrEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotWilliamsrLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotWilliamsrLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotWilliamsrLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotWilliamsrLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotWilliamsrLastVisiblePriceLabelOptions; } /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotWilliamsrMarkerOptions { /** * (Highstock) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highstock) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highstock) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. */ radius?: number; /** * (Highstock) States for a single point marker. */ states?: PlotWilliamsrMarkerStatesOptions; /** * (Highstock) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highstock) Animation when hovering over the marker. */ export interface PlotWilliamsrMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highstock) The hover state for a single point marker. */ export interface PlotWilliamsrMarkerStatesHoverOptions { /** * (Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotWilliamsrMarkerStatesHoverAnimationOptions); /** * (Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highstock) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotWilliamsrMarkerStatesInactiveOptions { /** * (Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highstock) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotWilliamsrMarkerStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highstock) States for a single point marker. */ export interface PlotWilliamsrMarkerStatesOptions { /** * (Highstock) The hover state for a single point marker. */ hover?: PlotWilliamsrMarkerStatesHoverOptions; inactive?: PlotWilliamsrMarkerStatesInactiveOptions; /** * (Highstock) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotWilliamsrMarkerStatesNormalOptions; /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotWilliamsrMarkerStatesSelectOptions; } /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotWilliamsrMarkerStatesSelectOptions { /** * (Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Williams %R. This series requires the `linkedTo` option to be set * and should be loaded after the `stock/indicators/indicators.js`. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `williamsr` series are defined in plotOptions.williamsr. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotWilliamsrOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotWilliamsrAccessibilityOptions); /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotWilliamsrAnimationOptions); /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highstock) Whether to compare indicator to the main series values or * indicator values. */ compareToMain?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotWilliamsrConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotWilliamsrDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotWilliamsrDragDropOptions; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotWilliamsrEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotWilliamsrLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotWilliamsrLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotWilliamsrLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The main series ID that indicator will be * based on. Required for this indicator. */ linkedTo?: string; /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotWilliamsrMarkerOptions; /** * (Highstock) The name of the series as shown in the legend, tooltip etc. * If not set, it will be based on a technical indicator type and default * params. */ name?: string; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Paramters used in calculation of Williams %R series points. */ params?: PlotWilliamsrParamsOptions; /** * (Highstock) Properties for each single point. */ point?: PlotWilliamsrPointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotWilliamsrStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotWilliamsrTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotWilliamsrZonesOptions>; } /** * (Highstock) Paramters used in calculation of Williams %R series points. */ export interface PlotWilliamsrParamsOptions { /** * (Highstock) Period for Williams %R oscillator */ period?: number; } /** * (Highstock) Events for each single point. */ export interface PlotWilliamsrPointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotWilliamsrPointOptions { /** * (Highstock) Events for each single point. */ events?: PlotWilliamsrPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotWilliamsrStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotWilliamsrStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotWilliamsrStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotWilliamsrStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotWilliamsrStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotWilliamsrStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotWilliamsrStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotWilliamsrStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotWilliamsrStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotWilliamsrStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotWilliamsrStatesHoverMarkerStatesHoverOptions; inactive?: PlotWilliamsrStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotWilliamsrStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotWilliamsrStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotWilliamsrStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotWilliamsrStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotWilliamsrStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotWilliamsrStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotWilliamsrStatesHoverMarkerOptions; } export interface PlotWilliamsrStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotWilliamsrStatesInactiveOptions { animation?: PlotWilliamsrStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotWilliamsrStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotWilliamsrStatesOptions { /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotWilliamsrStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotWilliamsrStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotWilliamsrStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotWilliamsrStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotWilliamsrStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotWilliamsrStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotWilliamsrStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotWilliamsrStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotWilliamsrStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotWilliamsrStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotWilliamsrStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotWilliamsrStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotWilliamsrStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotWilliamsrStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotWilliamsrStatesSelectMarkerStatesHoverOptions; inactive?: PlotWilliamsrStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotWilliamsrStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotWilliamsrStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotWilliamsrStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotWilliamsrStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotWilliamsrStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotWilliamsrStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotWilliamsrStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotWilliamsrTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotWilliamsrTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotWilliamsrTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) Number of decimals in indicator series. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotWilliamsrZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts, Highstock) Keyboard navigation for a series */ export interface PlotWindbarbAccessibilityKeyboardNavigationOptions { /** * (Highcharts, Highstock) Enable/disable keyboard navigation support for a * specific series. */ enabled?: boolean; } /** * (Highcharts, Highstock) Accessibility options for a series. Requires the * accessibility module. */ export interface PlotWindbarbAccessibilityOptions { /** * (Highcharts, Highstock) Provide a description of the series, announced to * screen readers. */ description?: string; /** * (Highcharts, Highstock) Enable/disable accessibility functionality for a * specific series. */ enabled?: boolean; /** * (Highcharts, Highstock) Expose only the series element to screen readers, * not its points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts, Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotWindbarbAccessibilityKeyboardNavigationOptions); /** * (Highcharts, Highstock) Formatter function to use instead of the default * for point descriptions. Same as * `accessibility.pointDescriptionFormatter`, but for a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts, Highstock) Enable or disable the initial animation when a series * is displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotWindbarbAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotWindbarbConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotWindbarbConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotWindbarbConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotWindbarbConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotWindbarbConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotWindbarbConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotWindbarbConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highcharts, Highstock) Data grouping options for the wind barbs. In * Highcharts, this requires the `modules/datagrouping.js` module to be loaded. * In Highstock, data grouping is included. */ export interface PlotWindbarbDataGroupingOptions { /** * (Highcharts, Highstock) Approximation function for the data grouping. The * default returns an average of wind speed and a vector average direction * weighted by wind speed. */ approximation?: (string|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highcharts, Highstock) Whether to enable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highcharts, Highstock) The approximate data group width. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts, Highstock) General event handlers for the series items. These * event hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotWindbarbEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts, Highstock) Fires when the checkbox next to the series' name * in the legend is clicked. One parameter, `event`, is passed to the * function. The state of the checkbox is found by `event.checked`. The * checked item is found by `event.item`. Return `false` to prevent the * default action which is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is clicked. One parameter, * `event`, is passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is hidden after chart * generation time, either by clicking the legend item or by calling * `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts, Highstock) Fires when the legend item belonging to the * series is clicked. One parameter, `event`, is passed to the function. The * default action is to toggle the visibility of the series. This can be * prevented by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse leaves the graph. One * parameter, `event`, is passed to the function, containing common event * information. If the stickyTracking option is true, `mouseOut` doesn't * happen before the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse enters the graph. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts, Highstock) Fires when the series is shown after chart * generation time, either by clicking the legend item or by calling * `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotWindbarbLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotWindbarbLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotWindbarbLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotWindbarbLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotWindbarbLastVisiblePriceLabelOptions; } /** * (Highcharts, Highstock) Wind barbs are a convenient way to represent wind * speed and direction in one graphical form. Wind direction is given by the * stem direction, and wind speed by the number and shape of barbs. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `windbarb` series are defined in plotOptions.windbarb. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotWindbarbOptions { /** * (Highcharts, Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotWindbarbAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highcharts, Highstock) Allow this series' points to be selected by * clicking on the graphic (columns, point markers, pie slices, map areas * etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts, Highstock) Enable or disable the initial animation when a * series is displayed. The animation can also be set as a configuration * object. Please note that this option only applies to the initial * animation of the series itself. For other animations, see chart.animation * and the animation parameter under the API methods. The following * properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotWindbarbAnimationOptions); /** * (Highcharts, Highstock) For some series, there is a limit that shuts down * initial animation by default when the total number of points in the chart * is too high. For example, for a column chart and its derivatives, * animation does not run if there is more than 250 points totally. To * disable this cap, set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highcharts, Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts, Highstock, Gantt) The color of the border surrounding each * column or bar. * * In styled mode, the border stroke can be set with the `.highcharts-point` * rule. */ borderColor?: ColorString; /** * (Highcharts, Highstock, Gantt) The corner radius of the border * surrounding each column or bar. */ borderRadius?: number; /** * (Highcharts, Highstock, Gantt) The width of the border surrounding each * column or bar. Defaults to `1` when there is room for a border, but to * `0` when the columns are so dense that a border would cover the next * column. * * In styled mode, the stroke width can be set with the `.highcharts-point` * rule. */ borderWidth?: number; /** * (Highcharts, Highstock) An additional class name to apply to the series' * graphical elements. This option does not replace default class names of * the graphical element. */ className?: string; /** * (Highcharts, Highstock) Disable this option to allow series rendering in * the whole plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts, Highstock) The main color of the series. In line type series * it applies to the line and the point markers unless otherwise specified. * In bar type series it applies to the bars unless a color is specified per * point. The default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts, Highstock, Gantt) When using automatic point colors pulled * from the global colors or series-specific plotOptions.column.colors * collections, this option determines whether the chart should receive one * color per series or one color per point. * * In styled mode, the `colors` or `series.colors` arrays are not supported, * and instead this option gives the points individual color class names on * the form `highcharts-color-{n}`. */ colorByPoint?: boolean; /** * (Highcharts, Highstock) Styled mode only. A specific color index to use * for the series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) A series specific or series type specific * color set to apply instead of the global colors when colorByPoint is * true. */ colors?: Array<(ColorString|GradientColorObject|PatternObject)>; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotWindbarbConnectorsOptions; /** * (Highcharts, Highstock, Gantt) When true, each column edge is rounded to * its nearest pixel in order to render sharp on screen. In some cases, when * there are a lot of densely packed columns, this leads to visible * difference in column widths or distance between columns. In these cases, * setting `crisp` to `false` may look better, even though each column is * rendered blurry. */ crisp?: boolean; /** * (Highcharts, Highstock) You can set the cursor to "pointer" if you have * click events attached to the series, to signal to the user that the * points and lines can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highcharts, Highstock) Data grouping options for the wind barbs. In * Highcharts, this requires the `modules/datagrouping.js` module to be * loaded. In Highstock, data grouping is included. */ dataGrouping?: PlotWindbarbDataGroupingOptions; /** * (Highcharts, Highstock) Options for the series data labels, appearing * next to each data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) Depth of the columns in a 3D column chart. Requires * `highcharts-3d.js`. */ depth?: number; /** * (Highcharts, Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts) 3D columns only. The color of the edges. Similar to * `borderColor`, except it defaults to the same color as the column. */ edgeColor?: ColorString; /** * (Highcharts) 3D columns only. The width of the colored edges. */ edgeWidth?: number; /** * (Highcharts, Highstock) Enable or disable the mouse tracking for a * specific series. This includes point tooltips and click events on graphs * and points. For large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts, Highstock) General event handlers for the series items. * These event hooks can also be attached to the series at run time using * the `Highcharts.addEvent` function. */ events?: PlotWindbarbEventsOptions; /** * (Highcharts, Highstock) By default, series are exposed to screen readers * as regions. By enabling this option, the series element itself will be * exposed in the same way as the data points. This is useful if the series * is not used as a grouping entity in the chart, but you still want to * attach a description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highcharts, Highstock) Determines whether the series should look for the * nearest point in both dimensions or just the x-dimension when hovering * the series. Defaults to `'xy'` for scatter series and `'x'` for most * other series. If the data has duplicate x-values, it is recommended to * set this to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highcharts, Highstock, Gantt) Whether to group non-stacked columns or to * let them render independent of each other. Non-grouped columns will be * laid out individually and overlap each other. */ grouping?: boolean; /** * (Highcharts, Highstock, Gantt) Padding between each value groups, in x * axis units. */ groupPadding?: number; /** * (Highcharts) The spacing between columns on the Z Axis in a 3D chart. * Requires `highcharts-3d.js`. */ groupZPadding?: number; /** * (Highcharts, Highstock) Export-data module required. When set to `false` * will prevent the series data from being included in any form of data * export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts, Highstock) An array specifying which option maps to which * key in the data point array. This makes it convenient to work with * unstructured data arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotWindbarbLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotWindbarbLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotWindbarbLastVisiblePriceOptions; /** * (Highcharts, Highstock) The line width of the wind barb symbols. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts, Highstock, Gantt) The maximum allowed pixel width for a * column, translated to the height of a bar in a bar chart. This prevents * the columns from becoming too wide when there is a small number of points * in the chart. */ maxPointWidth?: number; /** * (Highcharts, Highstock, Gantt) The minimal height for a column or width * for a bar. By default, 0 values are not shown. To visualize a 0 (or close * to zero) point, set the minimal point length to a pixel value like 3\. In * stacked column charts, minPointLength might not be respected for tightly * packed values. */ minPointLength?: number; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts, Highstock) The color for the parts of the graph or points * that are below the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The id of another series in the chart that the * wind barbs are projected on. When `null`, the wind symbols are drawn on * the X axis, but offset up or down by the `yOffset` setting. */ onSeries?: (string|null); /** * (Highcharts, Highstock) Opacity of a series parts: line, fill (e.g. area) * and dataLabels. */ opacity?: number; /** * (Highcharts, Highstock) Properties for each single point. */ point?: PlotWindbarbPointOptions; /** * (Highcharts, Highstock) Same as accessibility.pointDescriptionFormatter, * but for an individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, `pointInterval` defines the interval of the x values. For * example, if a series contains one value every decade starting from year * 0, set `pointInterval` to `10`. In true `datetime` axes, the * `pointInterval` is set in milliseconds. * * It can be also be combined with `pointIntervalUnit` to draw irregular * time intervals. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointInterval?: number; /** * (Highcharts, Highstock, Gantt) On datetime series, this allows for * setting the pointInterval to irregular time units, `day`, `month` and * `year`. A day is usually the same as 24 hours, but `pointIntervalUnit` * also takes the DST crossover into consideration when dealing with local * time. Combine this option with `pointInterval` to draw weeks, quarters, 6 * months, 10 years etc. * * Please note that this options applies to the _series data_, not the * interval of the axis ticks, which is independent. */ pointIntervalUnit?: OptionsPointIntervalUnitValue; /** * (Highcharts, Highstock, Gantt) Padding between each column or bar, in x * axis units. */ pointPadding?: number; /** * (Highcharts, Highstock, Gantt) Possible values: `"on"`, `"between"`, * `number`. * * In a column chart, when pointPlacement is `"on"`, the point will not * create any padding of the X axis. In a polar column chart this means that * the first column points directly north. If the pointPlacement is * `"between"`, the columns will be laid out between ticks. This is useful * for example for visualising an amount between two points in time or in a * certain sector of a polar chart. * * Since Highcharts 3.0.2, the point placement can also be numeric, where 0 * is on the axis value, -0.5 is between this value and the previous, and * 0.5 is between this value and the next. Unlike the textual options, * numeric point placement options won't affect axis padding. * * Note that pointPlacement needs a pointRange to work. For column series * this is computed, but for line-type series it needs to be set. * * For the `xrange` series type and gantt charts, if the Y axis is a * category axis, the `pointPlacement` applies to the Y axis rather than the * (typically datetime) X axis. * * Defaults to `undefined` in cartesian charts, `"between"` in polar charts. */ pointPlacement?: (number|string); /** * (Highcharts, Highstock, Gantt) The X axis range that each point is valid * for. This determines the width of the column. On a categorized axis, the * range will be 1 by default (one category unit). On linear and datetime * axes, the range will be computed as the distance between the two closest * data points. * * The default `null` means it is computed automatically, but this option * can be used to override the automatic value. */ pointRange?: (number|null); /** * (Highcharts, Highstock, Gantt) If no x values are given for the points in * a series, pointStart defines on what value to start. For example, if a * series contains one yearly value starting from 1945, set pointStart to * 1945. */ pointStart?: number; /** * (Highcharts, Highstock, Gantt) A pixel value specifying a fixed width for * each column or bar. When `null`, the width is calculated from the * `pointPadding` and `groupPadding`. */ pointWidth?: number; /** * (Highcharts, Highstock) Whether to select the series initially. If * `showCheckbox` is true, the checkbox next to the series name in the * legend will be checked for a selected series. */ selected?: boolean; /** * (Highcharts, Highstock) If true, a checkbox is displayed next to the * legend item to allow selecting the series. The state of the checkbox is * determined by the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts, Highstock) Whether to display this particular series or * series type in the legend. The default value is `true` for standalone * series, `false` for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts, Highstock) If set to `true`, the accessibility module will * skip past the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotWindbarbStatesOptions; /** * (Highcharts, Highstock) Sticky tracking of mouse events. When true, the * `mouseOut` event on a series isn't triggered until the mouse moves over * another series, or out of the plot area. When false, the `mouseOut` event * on a series is triggered when the mouse leaves the area around the * series' graph or markers. This also implies the tooltip when not shared. * When `stickyTracking` is false and `tooltip.shared` is false, the tooltip * will be hidden when moving the mouse between series. Defaults to true for * line and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts) The Y axis value to serve as the base for the columns, for * distinguishing between values above and below a threshold. If `null`, the * columns extend from the padding Y axis minimum. */ threshold?: number; /** * (Highcharts, Highstock) A configuration object for the tooltip rendering * of each single series. Properties are inherited from tooltip, but only * the following properties can be defined on a series level. */ tooltip?: PlotWindbarbTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highcharts, Highstock) Pixel length of the stems. */ vectorLength?: number; /** * (Highcharts, Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highcharts, Highstock) Horizontal offset from the cartesian position, in * pixels. When the chart is inverted, this option allows translation like * yOffset in non inverted charts. */ xOffset?: number; /** * (Highcharts, Highstock) Vertical offset from the cartesian position, in * pixels. The default value makes sure the symbols don't overlap the X axis * when `onSeries` is `null`, and that they don't overlap the linked series * when `onSeries` is given. */ yOffset?: number; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotWindbarbZonesOptions>; } /** * (Highcharts, Highstock) Events for each single point. */ export interface PlotWindbarbPointEventsOptions { /** * (Highcharts, Highstock) Fires when a point is clicked. One parameter, * `event`, is passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock) Callback that fires while dragging a point. The * mouse event is passed in as parameter. The original data can be accessed * from `e.origin`, and the new point values can be accessed from * `e.newPoints`. If there is only a single point being updated, it can be * accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock) Callback that fires when starting to drag a * point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock) Callback that fires when the point is dropped. * The parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse leaves the area close to the * point. One parameter, `event`, is passed to the function, containing * common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock) Fires when the mouse enters the area close to the * point. One parameter, `event`, is passed to the function, containing * common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock) Fires when the point is updated programmatically * through the `.update()` method. One parameter, `event`, is passed to the * function. The new point options can be accessed through `event.options`. * Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts, Highstock) Properties for each single point. */ export interface PlotWindbarbPointOptions { /** * (Highcharts, Highstock) Events for each single point. */ events?: PlotWindbarbPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotWindbarbStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock, Gantt) Options for the hovered point. These settings * override the normal state options when a point is moused over or touched. */ export interface PlotWindbarbStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotWindbarbStatesHoverAnimationOptions); /** * (Highcharts, Gantt) A specific border color for the hovered point. * Defaults to inherit the normal state border color. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) How much to brighten the point on * interaction. Requires the main color to be defined in hex or rgb(a) * format. * * In styled mode, the hover brightening is by default replaced with a * fill-opacity set in the `.highcharts-point:hover` rule. */ brightness?: number; /** * (Highcharts, Gantt) A specific color for the hovered point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) Enable separate styles for the hovered * series to visualize that the user hovers either the series itself or the * legend. */ enabled?: boolean; lineWidthPlus?: number; } export interface PlotWindbarbStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The opposite state of a hover for series. */ export interface PlotWindbarbStatesInactiveOptions { animation?: PlotWindbarbStatesInactiveAnimationOptions; /** * (Highcharts, Highstock) Opacity of series elements (dataLabels, line, * area). */ opacity?: number; } /** * (Highcharts, Highstock) The normal state of a series, or for point items in * column, pie and similar series. Currently only used for setting animation * when returning to normal state from hover. */ export interface PlotWindbarbStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotWindbarbStatesOptions { /** * (Highcharts, Highstock, Gantt) Options for the hovered point. These * settings override the normal state options when a point is moused over or * touched. */ hover?: PlotWindbarbStatesHoverOptions; /** * (Highcharts, Highstock) The opposite state of a hover for series. */ inactive?: PlotWindbarbStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a series, or for point items * in column, pie and similar series. Currently only used for setting * animation when returning to normal state from hover. */ normal?: PlotWindbarbStatesNormalOptions; /** * (Highcharts, Highstock, Gantt) Options for the selected point. These * settings override the normal state options when a point is selected. */ select?: PlotWindbarbStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotWindbarbStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock, Gantt) Options for the selected point. These settings * override the normal state options when a point is selected. */ export interface PlotWindbarbStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotWindbarbStatesSelectAnimationOptions; /** * (Highcharts, Highstock, Gantt) A specific border color for the selected * point. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) A specific color for the selected point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) Enable separate styles for the hovered * series to visualize that the user hovers either the series itself or the * legend. */ enabled?: boolean; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotWindbarbTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts, Highstock) A configuration object for the tooltip rendering of * each single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ export interface PlotWindbarbTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotWindbarbTooltipDateTimeLabelFormatsOptions|Dictionary<string>); distance?: number; /** * (Highcharts, Highstock) Whether the tooltip should follow the mouse as it * moves across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts, Highstock) Whether the tooltip should update as the finger * moves on a touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts, Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts, Highstock) The HTML of the tooltip header line. Variables * are enclosed by curly brackets. Available variables are `point.key`, * `series.name`, `series.color` and other members from the `point` and * `series` objects. The `point.key` variable contains the category name, x * value or datetime string depending on the type of axis. For datetime * axes, the `point.key` date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts, Highstock) The name of a symbol to use for the border around * the tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts, Highstock) The number of milliseconds to wait until the * tooltip is hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts, Highstock) The HTML of the null point's line in the tooltip. * Works analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts, Highstock) Callback function to format the text of the * tooltip for visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts, Highstock) Whether to allow the tooltip to render outside * the chart's SVG element box. By default (`false`), the tooltip is * rendered within the chart's SVG element, which results in the tooltip * being aligned inside the chart area. For small charts, this may result in * clipping or overlapping. When `true`, a separate SVG element is created * and overlaid on the page, allowing the tooltip to be aligned inside the * page itself. */ outside?: boolean; /** * (Highcharts, Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts, Highstock) The default point format for the wind barb * tooltip. Note the `point.beaufort` property that refers to the Beaufort * wind scale. The names can be internationalized by modifying * `Highcharts.seriesTypes.windbarb.prototype.beaufortNames`. */ pointFormat?: string; /** * (Highcharts, Highstock) A callback function for formatting the HTML * output for a single point in the tooltip. Like the `pointFormat` string, * but with more flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts, Highstock) How many decimals to show in each series' y * value. This is overridable in each series' tooltip options object. The * default is to preserve all decimals. */ valueDecimals?: number; /** * (Highcharts, Highstock) A string to prepend to each series' y value. * Overridable in each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts, Highstock) A string to append to each series' y value. * Overridable in each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotWindbarbZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotWmaAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotWmaAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotWmaAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotWmaAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotWmaConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotWmaConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotWmaConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotWmaConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotWmaConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotWmaConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotWmaConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotWmaDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotWmaDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotWmaDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotWmaDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotWmaDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotWmaDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotWmaDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotWmaDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotWmaEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotWmaLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotWmaLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotWmaLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotWmaLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotWmaLastVisiblePriceLabelOptions; } /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotWmaMarkerOptions { /** * (Highstock) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highstock) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highstock) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. */ radius?: number; /** * (Highstock) States for a single point marker. */ states?: PlotWmaMarkerStatesOptions; /** * (Highstock) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highstock) Animation when hovering over the marker. */ export interface PlotWmaMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highstock) The hover state for a single point marker. */ export interface PlotWmaMarkerStatesHoverOptions { /** * (Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotWmaMarkerStatesHoverAnimationOptions); /** * (Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highstock) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotWmaMarkerStatesInactiveOptions { /** * (Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highstock) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotWmaMarkerStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highstock) States for a single point marker. */ export interface PlotWmaMarkerStatesOptions { /** * (Highstock) The hover state for a single point marker. */ hover?: PlotWmaMarkerStatesHoverOptions; inactive?: PlotWmaMarkerStatesInactiveOptions; /** * (Highstock) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotWmaMarkerStatesNormalOptions; /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotWmaMarkerStatesSelectOptions; } /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotWmaMarkerStatesSelectOptions { /** * (Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Weighted moving average indicator (WMA). This series requires * `linkedTo` option to be set. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `wma` series are defined in plotOptions.wma. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotWmaOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotWmaAccessibilityOptions); /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotWmaAnimationOptions); /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highstock) Whether to compare indicator to the main series values or * indicator values. */ compareToMain?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotWmaConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotWmaDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotWmaDragDropOptions; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotWmaEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotWmaLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotWmaLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotWmaLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The main series ID that indicator will be * based on. Required for this indicator. */ linkedTo?: string; /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotWmaMarkerOptions; /** * (Highstock) The name of the series as shown in the legend, tooltip etc. * If not set, it will be based on a technical indicator type and default * params. */ name?: string; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Paramters used in calculation of regression series' points. */ params?: PlotWmaParamsOptions; /** * (Highstock) Properties for each single point. */ point?: PlotWmaPointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotWmaStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotWmaTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotWmaZonesOptions>; } /** * (Highstock) Paramters used in calculation of regression series' points. */ export interface PlotWmaParamsOptions { /** * (Highstock) The point index which indicator calculations will base. For * example using OHLC data, index=2 means the indicator will be calculated * using Low values. */ index?: number; /** * (Highstock) The base period for indicator calculations. This is the * number of data points which are taken into account for the indicator * calculations. */ period?: number; } /** * (Highstock) Events for each single point. */ export interface PlotWmaPointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotWmaPointOptions { /** * (Highstock) Events for each single point. */ events?: PlotWmaPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotWmaStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotWmaStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotWmaStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotWmaStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotWmaStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotWmaStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotWmaStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotWmaStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotWmaStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotWmaStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotWmaStatesHoverMarkerStatesHoverOptions; inactive?: PlotWmaStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotWmaStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotWmaStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotWmaStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotWmaStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotWmaStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotWmaStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotWmaStatesHoverMarkerOptions; } export interface PlotWmaStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotWmaStatesInactiveOptions { animation?: PlotWmaStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotWmaStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotWmaStatesOptions { /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotWmaStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotWmaStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotWmaStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotWmaStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotWmaStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotWmaStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotWmaStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotWmaStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotWmaStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotWmaStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotWmaStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotWmaStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotWmaStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotWmaStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotWmaStatesSelectMarkerStatesHoverOptions; inactive?: PlotWmaStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotWmaStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotWmaStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotWmaStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotWmaStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotWmaStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotWmaStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotWmaStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotWmaTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotWmaTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotWmaTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) Number of decimals in indicator series. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotWmaZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highcharts) Keyboard navigation for a series */ export interface PlotWordcloudAccessibilityKeyboardNavigationOptions { /** * (Highcharts) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highcharts) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotWordcloudAccessibilityOptions { /** * (Highcharts) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highcharts) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highcharts) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotWordcloudAccessibilityKeyboardNavigationOptions); /** * (Highcharts) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotWordcloudAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotWordcloudConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotWordcloudConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotWordcloudConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotWordcloudConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotWordcloudConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotWordcloudConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotWordcloudConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highcharts) Options for the drag handles. */ export interface PlotWordcloudDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface PlotWordcloudDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotWordcloudDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: PlotWordcloudDragDropGuideBoxDefaultOptions; } /** * (Highcharts) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotWordcloudDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: PlotWordcloudDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotWordcloudDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotWordcloudEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotWordcloudLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotWordcloudLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotWordcloudLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotWordcloudLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotWordcloudLastVisiblePriceLabelOptions; } /** * (Highcharts) A word cloud is a visualization of a set of words, where the * size and placement of a word is determined by how it is weighted. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `wordcloud` series are defined in plotOptions.wordcloud. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotWordcloudOptions { /** * (Highcharts) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotWordcloudAccessibilityOptions); /** * (Highcharts) If there is no space for a word on the playing field, then * this option will allow the playing field to be extended to fit the word. * If false then the word will be dropped from the visualization. * * NB! This option is currently not decided to be published in the API, and * is therefore marked as private. */ allowExtendPlayingField?: boolean; /** * (Highcharts) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: PlotWordcloudAnimationOptions; /** * (Highcharts) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highcharts) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts, Highstock, Gantt) The color of the border surrounding each * column or bar. * * In styled mode, the border stroke can be set with the `.highcharts-point` * rule. */ borderColor?: ColorString; /** * (Highcharts, Highstock, Gantt) The corner radius of the border * surrounding each column or bar. */ borderRadius?: number; /** * (Highcharts, Highstock, Gantt) The width of the border surrounding each * column or bar. Defaults to `1` when there is room for a border, but to * `0` when the columns are so dense that a border would cover the next * column. * * In styled mode, the stroke width can be set with the `.highcharts-point` * rule. */ borderWidth?: number; /** * (Highcharts) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; clip?: boolean; /** * (Highcharts) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) When using automatic point colors pulled * from the global colors or series-specific plotOptions.column.colors * collections, this option determines whether the chart should receive one * color per series or one color per point. * * In styled mode, the `colors` or `series.colors` arrays are not supported, * and instead this option gives the points individual color class names on * the form `highcharts-color-{n}`. */ colorByPoint?: boolean; /** * (Highcharts) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) A series specific or series type specific * color set to apply instead of the global colors when colorByPoint is * true. */ colors?: Array<(ColorString|GradientColorObject|PatternObject)>; /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotWordcloudConnectorsOptions; /** * (Highcharts, Highstock, Gantt) When the series contains less points than * the crop threshold, all points are drawn, event if the points fall * outside the visible plot area at the current zoom. The advantage of * drawing all points (including markers and columns), is that animation is * performed on updates. On the other hand, when the series contains more * points than the crop threshold, the series data is cropped to only * contain points that fall within the plot area. The advantage of cropping * away invisible points is to increase performance on large series. */ cropThreshold?: number; /** * (Highcharts) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highcharts) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotWordcloudDragDropOptions; /** * (Highcharts) 3D columns only. The width of the colored edges. */ edgeWidth?: number; /** * (Highcharts) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotWordcloudEventsOptions; /** * (Highcharts) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highcharts) Export-data module required. When set to `false` will * prevent the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts) An array specifying which option maps to which key in the * data point array. This makes it convenient to work with unstructured data * arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotWordcloudLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotWordcloudLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotWordcloudLastVisiblePriceOptions; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts) The word with the largest weight will have a font size equal * to this value. The font size of a word is the ratio between its weight * and the largest occuring weight, multiplied with the value of * maxFontSize. */ maxFontSize?: number; /** * (Highcharts) A threshold determining the minimum font size that can be * applied to a word. */ minFontSize?: number; /** * (Highcharts) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highcharts) This option decides which algorithm is used for placement, * and rotation of a word. The choice of algorith is therefore a crucial * part of the resulting layout of the wordcloud. It is possible for users * to add their own custom placement strategies for use in word cloud. Read * more about it in our documentation */ placementStrategy?: string; /** * (Highcharts) Properties for each single point. */ point?: PlotWordcloudPointOptions; /** * (Highcharts) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts) Rotation options for the words in the wordcloud. */ rotation?: PlotWordcloudRotationOptions; /** * (Highcharts) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highcharts) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highcharts) If set to `true`, the accessibility module will skip past * the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts) Spiral used for placing a word after the initial position * experienced a collision with either another word or the borders. It is * possible for users to add their own custom spiralling algorithms for use * in word cloud. Read more about it in our documentation */ spiral?: string; states?: PlotWordcloudStatesOptions; /** * (Highcharts) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts) CSS styles for the words. */ style?: CSSObject; /** * (Highcharts) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotWordcloudTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highcharts) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; } /** * (Highcharts) Events for each single point. */ export interface PlotWordcloudPointEventsOptions { /** * (Highcharts) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts) Callback that fires when the point is dropped. The * parameters passed are the same as for drag. To stop the default drop * action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts) Fires when the point is removed using the `.remove()` * method. One parameter, `event`, is passed to the function. Returning * `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts) Fires when the point is unselected either programmatically * or following a click on the point. One parameter, `event`, is passed to * the function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) Properties for each single point. */ export interface PlotWordcloudPointOptions { /** * (Highcharts) Events for each single point. */ events?: PlotWordcloudPointEventsOptions; } /** * (Highcharts) Rotation options for the words in the wordcloud. */ export interface PlotWordcloudRotationOptions { /** * (Highcharts) The smallest degree of rotation for a word. */ from?: number; /** * (Highcharts) The number of possible orientations for a word, within the * range of `rotation.from` and `rotation.to`. */ orientations?: number; /** * (Highcharts) The largest degree of rotation for a word. */ to?: number; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotWordcloudStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock, Gantt) Options for the hovered point. These settings * override the normal state options when a point is moused over or touched. */ export interface PlotWordcloudStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotWordcloudStatesHoverAnimationOptions); /** * (Highcharts, Gantt) A specific border color for the hovered point. * Defaults to inherit the normal state border color. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) How much to brighten the point on * interaction. Requires the main color to be defined in hex or rgb(a) * format. * * In styled mode, the hover brightening is by default replaced with a * fill-opacity set in the `.highcharts-point:hover` rule. */ brightness?: number; /** * (Highcharts, Gantt) A specific color for the hovered point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) Enable separate styles for the hovered * series to visualize that the user hovers either the series itself or the * legend. */ enabled?: boolean; } export interface PlotWordcloudStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts) The opposite state of a hover for series. */ export interface PlotWordcloudStatesInactiveOptions { animation?: PlotWordcloudStatesInactiveAnimationOptions; /** * (Highcharts) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highcharts) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotWordcloudStatesNormalOptions { /** * (Highcharts) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotWordcloudStatesOptions { /** * (Highcharts, Highstock, Gantt) Options for the hovered point. These * settings override the normal state options when a point is moused over or * touched. */ hover?: PlotWordcloudStatesHoverOptions; /** * (Highcharts) The opposite state of a hover for series. */ inactive?: PlotWordcloudStatesInactiveOptions; /** * (Highcharts) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotWordcloudStatesNormalOptions; /** * (Highcharts, Highstock, Gantt) Options for the selected point. These * settings override the normal state options when a point is selected. */ select?: PlotWordcloudStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotWordcloudStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock, Gantt) Options for the selected point. These settings * override the normal state options when a point is selected. */ export interface PlotWordcloudStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotWordcloudStatesSelectAnimationOptions; /** * (Highcharts, Highstock, Gantt) A specific border color for the selected * point. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) A specific color for the selected point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) Enable separate styles for the hovered * series to visualize that the user hovers either the series itself or the * legend. */ enabled?: boolean; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotWordcloudTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotWordcloudTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotWordcloudTooltipDateTimeLabelFormatsOptions|Dictionary<string>); distance?: number; /** * (Highcharts) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts) The name of a symbol to use for the border around the * tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highcharts) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts) How many decimals to show in each series' y value. This is * overridable in each series' tooltip options object. The default is to * preserve all decimals. */ valueDecimals?: number; /** * (Highcharts) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock, Gantt) Keyboard navigation for a series */ export interface PlotXrangeAccessibilityKeyboardNavigationOptions { /** * (Highcharts, Highstock, Gantt) Enable/disable keyboard navigation support * for a specific series. */ enabled?: boolean; } /** * (Highcharts, Highstock, Gantt) Accessibility options for a series. Requires * the accessibility module. */ export interface PlotXrangeAccessibilityOptions { /** * (Highcharts, Highstock, Gantt) Provide a description of the series, * announced to screen readers. */ description?: string; /** * (Highcharts, Highstock, Gantt) Enable/disable accessibility functionality * for a specific series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) Expose only the series element to screen * readers, not its points. */ exposeAsGroupOnly?: boolean; /** * (Highcharts, Highstock, Gantt) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotXrangeAccessibilityKeyboardNavigationOptions); /** * (Highcharts, Highstock, Gantt) Formatter function to use instead of the * default for point descriptions. Same as * `accessibility.pointDescriptionFormatter`, but for a single series. */ pointDescriptionFormatter?: Function; } /** * (Highcharts, Highstock, Gantt) Enable or disable the initial animation when a * series is displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the animation * parameter under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotXrangeAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotXrangeConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotXrangeConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotXrangeConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotXrangeConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotXrangeConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotXrangeConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotXrangeConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotXrangeDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. Defaults to `10`. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highcharts, Highstock, Gantt) Options for the drag handles. */ export interface PlotXrangeDragDropDragHandleOptions { /** * (Highcharts, Highstock, Gantt) The class name of the drag handles. * Defaults to `highcharts-drag-handle`. */ className?: string; /** * (Highcharts, Highstock, Gantt) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) The mouse cursor to use for the drag * handles. By default this is intelligently switching between `ew-resize` * and `ns-resize` depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts, Highstock, Gantt) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts, Highstock, Gantt) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) Function to define the SVG path to use for * the drag handles. Takes the point as argument. Should return an SVG path * in array format. The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts, Highstock, Gantt) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts, Highstock, Gantt) Style options for the guide box default state. */ export interface PlotXrangeDragDropGuideBoxDefaultOptions { /** * (Highcharts, Highstock, Gantt) CSS class name of the guide box in this * state. Defaults to `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts, Highstock, Gantt) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) Guide box cursor. */ cursor?: string; /** * (Highcharts, Highstock, Gantt) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts, Highstock, Gantt) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts, Highstock, Gantt) Style options for the guide box. The guide box * has one state by default, the `default` state. */ export interface PlotXrangeDragDropGuideBoxOptions { /** * (Highcharts, Highstock, Gantt) Style options for the guide box default * state. */ default?: PlotXrangeDragDropGuideBoxDefaultOptions; } /** * (Highcharts, Highstock, Gantt) The draggable-points module allows points to * be moved around or modified in the chart. In addition to the options * mentioned under the `dragDrop` API structure, the module fires three events, * point.dragStart, point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotXrangeDragDropOptions { /** * (Highcharts, Highstock, Gantt) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts, Highstock, Gantt) Allow x value to be dragged individually. * Requires `draggable-points` module. */ draggableX1?: boolean; /** * (Highcharts, Highstock, Gantt) Allow x2 value to be dragged individually. * Requires `draggable-points` module. */ draggableX2?: boolean; /** * (Highcharts, Highstock, Gantt) Enable dragging in the Y dimension. Note * that this is not supported for TreeGrid axes (the default axis type in * Gantt charts). */ draggableY?: boolean; /** * (Highcharts, Highstock, Gantt) Options for the drag handles. */ dragHandle?: PlotXrangeDragDropDragHandleOptions; /** * (Highcharts, Highstock, Gantt) Set the maximum X value the points can be * moved to. */ dragMaxX?: number; /** * (Highcharts, Highstock, Gantt) Set the maximum Y value the points can be * moved to. */ dragMaxY?: number; /** * (Highcharts, Highstock, Gantt) Set the minimum X value the points can be * moved to. */ dragMinX?: number; /** * (Highcharts, Highstock, Gantt) Set the minimum Y value the points can be * moved to. */ dragMinY?: number; /** * (Highcharts, Highstock, Gantt) The X precision value to drag to for this * series. Set to 0 to disable. By default this is disabled, except for * category axes, where the default is 1. */ dragPrecisionX?: number; /** * (Highcharts, Highstock, Gantt) The Y precision value to drag to for this * series. Set to 0 to disable. By default this is disabled, except for * category axes, where the default is 1. */ dragPrecisionY?: number; /** * (Highcharts, Highstock, Gantt) The amount of pixels to drag the pointer * before it counts as a drag operation. This prevents drag/drop to fire * when just clicking or selecting points. */ dragSensitivity?: number; /** * (Highcharts, Highstock, Gantt) Group the points by a property. Points * with the same property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts, Highstock, Gantt) Style options for the guide box. The guide * box has one state by default, the `default` state. */ guideBox?: (PlotXrangeDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts, Highstock, Gantt) Update points as they are dragged. If * false, a guide box is drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) General event handlers for the series items. * These event hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotXrangeEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the checkbox next to the * series' name in the legend is clicked. One parameter, `event`, is passed * to the function. The state of the checkbox is found by `event.checked`. * The checked item is found by `event.item`. Return `false` to prevent the * default action which is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the series is clicked. One * parameter, `event`, is passed to the function, containing common event * information. Additionally, `event.point` holds a pointer to the nearest * point on the graph. */ click?: SeriesClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the series is hidden after * chart generation time, either by clicking the legend item or by calling * `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the legend item belonging to * the series is clicked. One parameter, `event`, is passed to the function. * The default action is to toggle the visibility of the series. This can be * prevented by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the graph. One * parameter, `event`, is passed to the function, containing common event * information. If the stickyTracking option is true, `mouseOut` doesn't * happen before the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the graph. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the series is shown after chart * generation time, either by clicking the legend item or by calling * `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotXrangeLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotXrangeLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotXrangeLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotXrangeLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotXrangeLastVisiblePriceLabelOptions; } /** * (Highcharts, Highstock, Gantt) The X-range series displays ranges on the X * axis, typically time intervals with a start and end date. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `xrange` series are defined in plotOptions.xrange. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotXrangeOptions { /** * (Highcharts, Highstock, Gantt) Accessibility options for a series. * Requires the accessibility module. */ accessibility?: (object|PlotXrangeAccessibilityOptions); /** * (Highmaps) Whether all areas of the map defined in `mapData` should be * rendered. If `true`, areas which don't correspond to a data point, are * rendered as `null` points. If `false`, those areas are skipped. */ allAreas?: boolean; /** * (Highcharts, Highstock, Gantt) Allow this series' points to be selected * by clicking on the graphic (columns, point markers, pie slices, map areas * etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highcharts, Highstock, Gantt) Enable or disable the initial animation * when a series is displayed. The animation can also be set as a * configuration object. Please note that this option only applies to the * initial animation of the series itself. For other animations, see * chart.animation and the animation parameter under the API methods. The * following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotXrangeAnimationOptions); /** * (Highcharts, Highstock, Gantt) For some series, there is a limit that * shuts down initial animation by default when the total number of points * in the chart is too high. For example, for a column chart and its * derivatives, animation does not run if there is more than 250 points * totally. To disable this cap, set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highcharts, Highstock, Gantt) Sets the color blending in the boost * module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highcharts, Highstock, Gantt) The color of the border surrounding each * column or bar. * * In styled mode, the border stroke can be set with the `.highcharts-point` * rule. */ borderColor?: ColorString; /** * (Highcharts, Highstock, Gantt) The corner radius of the border * surrounding each column or bar. */ borderRadius?: number; /** * (Highcharts, Highstock, Gantt) The width of the border surrounding each * column or bar. Defaults to `1` when there is room for a border, but to * `0` when the columns are so dense that a border would cover the next * column. * * In styled mode, the stroke width can be set with the `.highcharts-point` * rule. */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) An additional class name to apply to the * series' graphical elements. This option does not replace default class * names of the graphical element. */ className?: string; /** * (Highcharts, Highstock, Gantt) Disable this option to allow series * rendering in the whole plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highcharts, Highstock, Gantt) The main color of the series. In line type * series it applies to the line and the point markers unless otherwise * specified. In bar type series it applies to the bars unless a color is * specified per point. The default value is pulled from the * `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Set this option to `false` to prevent a series from connecting * to the global color axis. This will cause the series to have its own * legend item. */ colorAxis?: boolean; /** * (Highcharts, Highstock, Gantt) In an X-range series, this option makes * all points of the same Y-axis category the same color. */ colorByPoint?: boolean; /** * (Highcharts, Highstock, Gantt) Styled mode only. A specific color index * to use for the series, so its graphic representations are given the class * name `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) A series specific or series type specific * color set to apply instead of the global colors when colorByPoint is * true. */ colors?: Array<(ColorString|GradientColorObject|PatternObject)>; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotXrangeConnectorsOptions; /** * (Highcharts, Highstock, Gantt) You can set the cursor to "pointer" if you * have click events attached to the series, to signal to the user that the * points and lines can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotXrangeDataGroupingOptions; /** * (Highcharts, Highstock, Gantt) Options for the series data labels, * appearing next to each data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts, Highstock, Gantt) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highcharts, Highstock, Gantt) The draggable-points module allows points * to be moved around or modified in the chart. In addition to the options * mentioned under the `dragDrop` API structure, the module fires three * events, point.dragStart, point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotXrangeDragDropOptions; /** * (Highcharts, Highstock, Gantt) Enable or disable the mouse tracking for a * specific series. This includes point tooltips and click events on graphs * and points. For large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highcharts, Highstock, Gantt) General event handlers for the series * items. These event hooks can also be attached to the series at run time * using the `Highcharts.addEvent` function. */ events?: PlotXrangeEventsOptions; /** * (Highcharts, Highstock, Gantt) By default, series are exposed to screen * readers as regions. By enabling this option, the series element itself * will be exposed in the same way as the data points. This is useful if the * series is not used as a grouping entity in the chart, but you still want * to attach a description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highcharts, Highstock, Gantt) Whether to group non-stacked columns or to * let them render independent of each other. Non-grouped columns will be * laid out individually and overlap each other. */ grouping?: boolean; /** * (Highcharts, Highstock, Gantt) Padding between each value groups, in x * axis units. */ groupPadding?: number; /** * (Highcharts) The spacing between columns on the Z Axis in a 3D chart. * Requires `highcharts-3d.js`. */ groupZPadding?: number; /** * (Highcharts, Highstock, Gantt) Export-data module required. When set to * `false` will prevent the series data from being included in any form of * data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highmaps) What property to join the `mapData` to the value data. For * example, if joinBy is "code", the mapData items with a specific code is * merged into the data with the same code. For maps loaded from GeoJSON, * the keys may be held in each point's `properties` object. * * The joinBy option can also be an array of two values, where the first * points to a key in the `mapData`, and the second points to another key in * the `data`. * * When joinBy is `null`, the map items are joined by their position in the * array, which performs much better in maps with many data points. This is * the recommended option if you are printing more than a thousand data * points and have a backend that can preprocess the data into a parallel * array of the mapData. */ joinBy?: (string|Array<string>); /** * (Highcharts, Highstock, Gantt) An array specifying which option maps to * which key in the data point array. This makes it convenient to work with * unstructured data arrays from different sources. */ keys?: Array<string>; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotXrangeLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotXrangeLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotXrangeLastVisiblePriceOptions; /** * (Highcharts, Highstock, Gantt) The id of another series to link to. * Additionally, the value can be ":previous" to link to the previous * series. When two series are linked, only the first one appears in the * legend. Toggling the visibility of this also toggles the linked series. */ linkedTo?: string; /** * (Highcharts, Highstock, Gantt) The maximum allowed pixel width for a * column, translated to the height of a bar in a bar chart. This prevents * the columns from becoming too wide when there is a small number of points * in the chart. */ maxPointWidth?: number; /** * (Highcharts, Highstock, Gantt) The minimal height for a column or width * for a bar. By default, 0 values are not shown. To visualize a 0 (or close * to zero) point, set the minimal point length to a pixel value like 3\. In * stacked column charts, minPointLength might not be respected for tightly * packed values. */ minPointLength?: number; /** * (Highstock) Options for the corresponding navigator series if * `showInNavigator` is `true` for this series. Available options are the * same as any series, documented at plotOptions and series. * * These options are merged with options in navigator.series, and will take * precedence if the same option is defined both places. */ navigatorOptions?: PlotSeriesOptions; /** * (Highcharts, Highstock, Gantt) Opacity of a series parts: line, fill * (e.g. area) and dataLabels. */ opacity?: number; /** * (Highcharts, Highstock, Gantt) A partial fill for each point, typically * used to visualize how much of a task is performed. The partial fill * object can be set either on series or point level. */ partialFill?: PlotXrangePartialFillOptions; /** * (Highcharts, Highstock, Gantt) Properties for each single point. */ point?: PlotXrangePointOptions; /** * (Highcharts, Highstock, Gantt) Same as * accessibility.pointDescriptionFormatter, but for an individual series. * Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highcharts, Highstock, Gantt) Padding between each column or bar, in x * axis units. */ pointPadding?: number; pointRange?: number; /** * (Highcharts, Highstock, Gantt) A pixel value specifying a fixed width for * each column or bar. When `null`, the width is calculated from the * `pointPadding` and `groupPadding`. */ pointWidth?: number; /** * (Highcharts, Highstock, Gantt) Whether to select the series initially. If * `showCheckbox` is true, the checkbox next to the series name in the * legend will be checked for a selected series. */ selected?: boolean; /** * (Highcharts, Highstock, Gantt) Whether to apply a drop shadow to the * graph line. Since 2.3 the shadow can be an object configuration * containing `color`, `offsetX`, `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highcharts, Highstock, Gantt) If true, a checkbox is displayed next to * the legend item to allow selecting the series. The state of the checkbox * is determined by the `selected` option. */ showCheckbox?: boolean; /** * (Highcharts, Highstock, Gantt) Whether to display this particular series * or series type in the legend. The default value is `true` for standalone * series, `false` for linked series. */ showInLegend?: boolean; /** * (Highstock) Whether or not to show the series in the navigator. Takes * precedence over navigator.baseSeries if defined. */ showInNavigator?: boolean; /** * (Highcharts, Highstock, Gantt) If set to `true`, the accessibility module * will skip past the points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; states?: PlotXrangeStatesOptions; /** * (Highcharts, Highstock, Gantt) Sticky tracking of mouse events. When * true, the `mouseOut` event on a series isn't triggered until the mouse * moves over another series, or out of the plot area. When false, the * `mouseOut` event on a series is triggered when the mouse leaves the area * around the series' graph or markers. This also implies the tooltip when * not shared. When `stickyTracking` is false and `tooltip.shared` is false, * the tooltip will be hidden when moving the mouse between series. Defaults * to true for line and area type series, but to false for columns, pies * etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock, Gantt) A configuration object for the tooltip * rendering of each single series. Properties are inherited from tooltip, * but only the following properties can be defined on a series level. */ tooltip?: PlotXrangeTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highcharts, Highstock, Gantt) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotXrangeZonesOptions>; } /** * (Highcharts, Highstock, Gantt) A partial fill for each point, typically used * to visualize how much of a task is performed. The partial fill object can be * set either on series or point level. */ export interface PlotXrangePartialFillOptions { /** * (Highcharts, Highstock, Gantt) The fill color to be used for partial * fills. Defaults to a darker shade of the point color. */ fill?: (ColorString|GradientColorObject|PatternObject); } /** * (Highcharts, Highstock, Gantt) Events for each single point. */ export interface PlotXrangePointEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Properties for each single point. */ export interface PlotXrangePointOptions { /** * (Highcharts, Highstock, Gantt) Events for each single point. */ events?: PlotXrangePointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotXrangeStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock, Gantt) Options for the hovered point. These settings * override the normal state options when a point is moused over or touched. */ export interface PlotXrangeStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotXrangeStatesHoverAnimationOptions); /** * (Highcharts, Gantt) A specific border color for the hovered point. * Defaults to inherit the normal state border color. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) How much to brighten the point on * interaction. Requires the main color to be defined in hex or rgb(a) * format. * * In styled mode, the hover brightening is by default replaced with a * fill-opacity set in the `.highcharts-point:hover` rule. */ brightness?: number; /** * (Highcharts, Gantt) A specific color for the hovered point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) Enable separate styles for the hovered * series to visualize that the user hovers either the series itself or the * legend. */ enabled?: boolean; } export interface PlotXrangeStatesInactiveAnimationOptions { duration?: number; } /** * (Highcharts, Highstock, Gantt) The opposite state of a hover for series. */ export interface PlotXrangeStatesInactiveOptions { animation?: PlotXrangeStatesInactiveAnimationOptions; /** * (Highcharts, Highstock, Gantt) Opacity of series elements (dataLabels, * line, area). */ opacity?: number; } /** * (Highcharts, Highstock, Gantt) The normal state of a series, or for point * items in column, pie and similar series. Currently only used for setting * animation when returning to normal state from hover. */ export interface PlotXrangeStatesNormalOptions { /** * (Highcharts, Highstock, Gantt) Animation when returning to normal state * after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotXrangeStatesOptions { /** * (Highcharts, Highstock, Gantt) Options for the hovered point. These * settings override the normal state options when a point is moused over or * touched. */ hover?: PlotXrangeStatesHoverOptions; /** * (Highcharts, Highstock, Gantt) The opposite state of a hover for series. */ inactive?: PlotXrangeStatesInactiveOptions; /** * (Highcharts, Highstock, Gantt) The normal state of a series, or for point * items in column, pie and similar series. Currently only used for setting * animation when returning to normal state from hover. */ normal?: PlotXrangeStatesNormalOptions; /** * (Highcharts, Highstock, Gantt) Options for the selected point. These * settings override the normal state options when a point is selected. */ select?: PlotXrangeStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotXrangeStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock, Gantt) Options for the selected point. These settings * override the normal state options when a point is selected. */ export interface PlotXrangeStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotXrangeStatesSelectAnimationOptions; /** * (Highcharts, Highstock, Gantt) A specific border color for the selected * point. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) A specific color for the selected point. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) Enable separate styles for the hovered * series to visualize that the user hovers either the series itself or the * legend. */ enabled?: boolean; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotXrangeTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highcharts, Highstock, Gantt) A configuration object for the tooltip * rendering of each single series. Properties are inherited from tooltip, but * only the following properties can be defined on a series level. */ export interface PlotXrangeTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotXrangeTooltipDateTimeLabelFormatsOptions|Dictionary<string>); distance?: number; /** * (Highcharts, Highstock, Gantt) Whether the tooltip should follow the * mouse as it moves across columns, pie slices and other point types with * an extent. By default it behaves this way for pie, polygon, map, sankey * and wordcloud series by override in the `plotOptions` for those series * types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts, Highstock, Gantt) Whether the tooltip should update as the * finger moves on a touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts, Highstock, Gantt) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highcharts, Highstock, Gantt) The HTML of the tooltip header line. * Variables are enclosed by curly brackets. Available variables are * `point.key`, `series.name`, `series.color` and other members from the * `point` and `series` objects. The `point.key` variable contains the * category name, x value or datetime string depending on the type of axis. * For datetime axes, the `point.key` date format can be set using * `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts, Highstock, Gantt) The name of a symbol to use for the border * around the tooltip header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts, Highstock, Gantt) The number of milliseconds to wait until * the tooltip is hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts, Highstock, Gantt) The HTML of the null point's line in the * tooltip. Works analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts, Highstock, Gantt) Callback function to format the text of * the tooltip for visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts, Highstock, Gantt) Whether to allow the tooltip to render * outside the chart's SVG element box. By default (`false`), the tooltip is * rendered within the chart's SVG element, which results in the tooltip * being aligned inside the chart area. For small charts, this may result in * clipping or overlapping. When `true`, a separate SVG element is created * and overlaid on the page, allowing the tooltip to be aligned inside the * page itself. */ outside?: boolean; /** * (Highcharts, Highstock, Gantt) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highcharts, Highstock, Gantt) The HTML of the point's line in the * tooltip. Variables are enclosed by curly brackets. Available variables * are point.x, point.y, series. name and series.color and other properties * on the same form. Furthermore, `point.y` can be extended by the * `tooltip.valuePrefix` and `tooltip.valueSuffix` variables. This can also * be overridden for each series, which makes it a good hook for displaying * units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts, Highstock, Gantt) A callback function for formatting the * HTML output for a single point in the tooltip. Like the `pointFormat` * string, but with more flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts, Highstock, Gantt) How many decimals to show in each series' * y value. This is overridable in each series' tooltip options object. The * default is to preserve all decimals. */ valueDecimals?: number; /** * (Highcharts, Highstock, Gantt) A string to prepend to each series' y * value. Overridable in each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts, Highstock, Gantt) A string to append to each series' y * value. Overridable in each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotXrangeZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * (Highstock) Keyboard navigation for a series */ export interface PlotZigzagAccessibilityKeyboardNavigationOptions { /** * (Highstock) Enable/disable keyboard navigation support for a specific * series. */ enabled?: boolean; } /** * (Highstock) Accessibility options for a series. Requires the accessibility * module. */ export interface PlotZigzagAccessibilityOptions { /** * (Highstock) Provide a description of the series, announced to screen * readers. */ description?: string; /** * (Highstock) Enable/disable accessibility functionality for a specific * series. */ enabled?: boolean; /** * (Highstock) Expose only the series element to screen readers, not its * points. */ exposeAsGroupOnly?: boolean; /** * (Highstock) Keyboard navigation for a series */ keyboardNavigation?: (object|PlotZigzagAccessibilityKeyboardNavigationOptions); /** * (Highstock) Formatter function to use instead of the default for point * descriptions. Same as `accessibility.pointDescriptionFormatter`, but for * a single series. */ pointDescriptionFormatter?: Function; } /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. Please * note that this option only applies to the initial animation of the series * itself. For other animations, see chart.animation and the animation parameter * under the API methods. The following properties are supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the `Math` * object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for several * chart types. */ export interface PlotZigzagAnimationOptions { duration?: number; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotZigzagConnectorsEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface PlotZigzagConnectorsMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ export interface PlotZigzagConnectorsOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: PlotZigzagConnectorsEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: PlotZigzagConnectorsMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: PlotZigzagConnectorsStartMarkerOptions; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface PlotZigzagConnectorsStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of the * JavaScript charts. Highstock by default applies data grouping when the points * become closer than a certain pixel value, determined by the `groupPixelWidth` * option. * * If data grouping is applied, the grouping information of grouped points can * be read from the Point.dataGroup. If point options other than the data itself * are set, for example `name` or `color` or custom properties, the grouping * logic doesn't know how to group it. In this case the options of the first * point instance are copied over to the group point. This can be altered * through a custom `approximation` callback function. */ export interface PlotZigzagDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } /** * (Highstock) Options for the drag handles. */ export interface PlotZigzagDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface PlotZigzagDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface PlotZigzagDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: PlotZigzagDragDropGuideBoxDefaultOptions; } /** * (Highstock) The draggable-points module allows points to be moved around or * modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ export interface PlotZigzagDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: PlotZigzagDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (PlotZigzagDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highstock) General event handlers for the series items. These event hooks * can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ export interface PlotZigzagEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires after the series has finished its * initial animation, or in case animation is disabled, immediately as the * series is displayed. */ afterAnimate?: SeriesAfterAnimateCallbackFunction; /** * (Highstock) Fires when the checkbox next to the series' name in the * legend is clicked. One parameter, `event`, is passed to the function. The * state of the checkbox is found by `event.checked`. The checked item is * found by `event.item`. Return `false` to prevent the default action which * is to toggle the select state of the series. */ checkboxClick?: SeriesCheckboxClickCallbackFunction; /** * (Highstock) Fires when the series is clicked. One parameter, `event`, is * passed to the function, containing common event information. * Additionally, `event.point` holds a pointer to the nearest point on the * graph. */ click?: SeriesClickCallbackFunction; /** * (Highstock) Fires when the series is hidden after chart generation time, * either by clicking the legend item or by calling `.hide()`. */ hide?: SeriesHideCallbackFunction; /** * (Highstock) Fires when the legend item belonging to the series is * clicked. One parameter, `event`, is passed to the function. The default * action is to toggle the visibility of the series. This can be prevented * by returning `false` or calling `event.preventDefault()`. */ legendItemClick?: SeriesLegendItemClickCallbackFunction; /** * (Highstock) Fires when the mouse leaves the graph. One parameter, * `event`, is passed to the function, containing common event information. * If the stickyTracking option is true, `mouseOut` doesn't happen before * the mouse enters another graph or leaves the plot area. */ mouseOut?: SeriesMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the graph. One parameter, * `event`, is passed to the function, containing common event information. */ mouseOver?: SeriesMouseOverCallbackFunction; /** * (Highstock) Fires when the series is shown after chart generation time, * either by clicking the legend item or by calling `.show()`. */ show?: SeriesShowCallbackFunction; } /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The goal * of this feature is to make the chart more easily readable, like if a human * designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ export interface PlotZigzagLabelOptions { /** * (Highcharts, Highstock, Gantt) An array of boxes to avoid when laying out * the labels. Each item has a `left`, `right`, `top` and `bottom` property. */ boxesToAvoid?: Array<LabelIntersectBoxObject>; /** * (Highcharts, Highstock, Gantt) Allow labels to be placed distant to the * graph if necessary, and draw a connector line to the graph. Setting this * option to true may decrease the performance significantly, since the * algorithm with systematically search for open spaces in the whole plot * area. Visually, it may also result in a more cluttered chart, though more * of the series will be labeled. */ connectorAllowed?: boolean; /** * (Highcharts, Highstock, Gantt) If the label is closer than this to a * neighbour graph, draw a connector. */ connectorNeighbourDistance?: number; /** * (Highcharts, Highstock, Gantt) Enable the series label per series. */ enabled?: boolean; /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ maxFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) For area-like series, allow the font size * to vary so that small areas get a smaller font size. The default applies * this effect to area-like series but not line-like series. */ minFontSize?: (number|null); /** * (Highcharts, Highstock, Gantt) Draw the label on the area of an area * series. By default it is drawn on the area. Set it to `false` to draw it * next to the graph instead. */ onArea?: (boolean|null); /** * (Highcharts, Highstock, Gantt) Styles for the series label. The color * defaults to the series color, or a contrast color if `onArea`. */ style?: CSSObject; } /** * (Highstock) The line marks the last price from all points. */ export interface PlotZigzagLastPriceOptions { /** * (Highstock) The color of the line of last price. */ color?: string; /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; } export interface PlotZigzagLastVisiblePriceLabelOptions { /** * (Highstock) Enable or disable the label. */ enabled?: boolean; } /** * (Highstock) The line marks the last price from visible range of points. */ export interface PlotZigzagLastVisiblePriceOptions { /** * (Highstock) Enable or disable the indicator. */ enabled?: boolean; label?: PlotZigzagLastVisiblePriceLabelOptions; } /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual appearance of * the markers. Other series types, like column series, don't have markers, but * have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface PlotZigzagMarkerOptions { /** * (Highstock) Enable or disable the point marker. If `undefined`, the * markers are hidden when the data is dense, and shown for more widespread * data points. */ enabled?: boolean; /** * (Highstock) The threshold for how dense the point markers should be * before they are hidden, given that `enabled` is not defined. The number * indicates the horizontal distance between the two closest points in the * series, as multiples of the `marker.radius`. In other words, the default * value of 2 means points are hidden if overlapping horizontally. */ enabledThreshold?: number; /** * (Highstock) The fill color of the point marker. When `undefined`, the * series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `width` must also be set. */ height?: number; /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. */ radius?: number; /** * (Highstock) States for a single point marker. */ states?: PlotZigzagMarkerStatesOptions; /** * (Highstock) A predefined shape or symbol for the marker. When undefined, * the symbol is pulled from options.symbols. Other possible values are * "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highstock) Image markers only. Set the image width explicitly. When * using this option, a `height` must also be set. */ width?: number; } /** * (Highstock) Animation when hovering over the marker. */ export interface PlotZigzagMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highstock) The hover state for a single point marker. */ export interface PlotZigzagMarkerStatesHoverOptions { /** * (Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotZigzagMarkerStatesHoverAnimationOptions); /** * (Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. When `undefined`, * the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2 as per the radiusPlus option. */ radius?: number; /** * (Highstock) The number of pixels to increase the radius of the hovered * point. */ radiusPlus?: number; } export interface PlotZigzagMarkerStatesInactiveOptions { /** * (Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highstock) The normal state of a single point marker. Currently only used * for setting animation when returning to normal state from hover. */ export interface PlotZigzagMarkerStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highstock) States for a single point marker. */ export interface PlotZigzagMarkerStatesOptions { /** * (Highstock) The hover state for a single point marker. */ hover?: PlotZigzagMarkerStatesHoverOptions; inactive?: PlotZigzagMarkerStatesInactiveOptions; /** * (Highstock) The normal state of a single point marker. Currently only * used for setting animation when returning to normal state from hover. */ normal?: PlotZigzagMarkerStatesNormalOptions; /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ select?: PlotZigzagMarkerStatesSelectOptions; } /** * (Highstock) The appearance of the point marker when selected. In order to * allow a point to be selected, set the `series.allowPointSelect` option to * true. */ export interface PlotZigzagMarkerStatesSelectOptions { /** * (Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the point marker's outline. When `undefined`, * the series' or point's color is used. */ lineColor?: ColorString; /** * (Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highstock) The radius of the point marker. In hover state, it defaults * to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Zig Zag indicator. * * This series requires `linkedTo` option to be set. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `zigzag` series are defined in plotOptions.zigzag. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface PlotZigzagOptions { /** * (Highstock) Accessibility options for a series. Requires the * accessibility module. */ accessibility?: (object|PlotZigzagAccessibilityOptions); /** * (Highstock) Allow this series' points to be selected by clicking on the * graphic (columns, point markers, pie slices, map areas etc). * * The selected points can be handled by point select and unselect events, * or collectively by the getSelectedPoints function. * * And alternative way of selecting points is through dragging. */ allowPointSelect?: boolean; /** * (Highstock) Enable or disable the initial animation when a series is * displayed. The animation can also be set as a configuration object. * Please note that this option only applies to the initial animation of the * series itself. For other animations, see chart.animation and the * animation parameter under the API methods. The following properties are * supported: * * - `duration`: The duration of the animation in milliseconds. * * - `easing`: Can be a string reference to an easing function set on the * `Math` object or a function. See the _Custom easing function_ demo below. * * Due to poor performance, animation is disabled in old IE browsers for * several chart types. */ animation?: (boolean|AnimationOptionsObject|PlotZigzagAnimationOptions); /** * (Highstock) For some series, there is a limit that shuts down initial * animation by default when the total number of points in the chart is too * high. For example, for a column chart and its derivatives, animation does * not run if there is more than 250 points totally. To disable this cap, * set `animationLimit` to `Infinity`. */ animationLimit?: number; /** * (Highstock) Sets the color blending in the boost module. */ boostBlending?: OptionsBoostBlendingValue; /** * (Highstock) Set the point threshold for when a series should enter boost * mode. * * Setting it to e.g. 2000 will cause the series to enter boost mode when * there are 2000 or more points in the series. * * To disable boosting on the series, set the `boostThreshold` to 0. Setting * it to 1 will force boosting. * * Note that the cropThreshold also affects this setting. When zooming in on * a series that has fewer points than the `cropThreshold`, all points are * rendered although outside the visible plot area, and the `boostThreshold` * won't take effect. * * Requires `modules/boost.js`. */ boostThreshold?: number; /** * (Highmaps) The border color of the map areas. * * In styled mode, the border stroke is given in the `.highcharts-point` * class. */ borderColor?: ColorString; /** * (Highmaps) The border width of each map area. * * In styled mode, the border stroke width is given in the * `.highcharts-point` class. */ borderWidth?: number; /** * (Highstock) An additional class name to apply to the series' graphical * elements. This option does not replace default class names of the * graphical element. */ className?: string; /** * (Highstock) Disable this option to allow series rendering in the whole * plotting area. * * **Note:** Clipping should be always enabled when chart.zoomType is set */ clip?: boolean; /** * (Highstock) The main color of the series. In line type series it applies * to the line and the point markers unless otherwise specified. In bar type * series it applies to the bars unless a color is specified per point. The * default value is pulled from the `options.colors` array. * * In styled mode, the color can be defined by the colorIndex option. Also, * the series color can be set with the `.highcharts-series`, * `.highcharts-color-{n}`, `.highcharts-{type}-series` or * `.highcharts-series-{n}` class, or individual classes given by the * `className` option. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Styled mode only. A specific color index to use for the * series, so its graphic representations are given the class name * `highcharts-color-{n}`. */ colorIndex?: number; /** * (Highstock) Compare the values of the series against the first non-null, * non- zero value in the visible range. The y axis will show percentage or * absolute change depending on whether `compare` is set to `"percent"` or * `"value"`. When this is applied to multiple series, it allows comparing * the development of the series against each other. Adds a `change` field * to every point object. */ compare?: string; /** * (Highstock) When compare is `percent`, this option dictates whether to * use 0 or 100 as the base of comparison. */ compareBase?: (0|100); /** * (Highstock) Defines if comparison should start from the first point * within the visible range or should start from the first point (see online * documentation for example) the range. In other words, this flag * determines if first point within the visible range will have 0% * (`compareStart=true`) or should have been already calculated according to * the previous point (`compareStart=false`). */ compareStart?: boolean; /** * (Highstock) Whether to compare indicator to the main series values or * indicator values. */ compareToMain?: boolean; /** * (Highcharts) Polar charts only. Whether to connect the ends of a line * series plot across the extremes. */ connectEnds?: boolean; /** * (Highcharts, Highstock) Whether to connect a graph line across null * points, or render a gap between the two points on either side of the * null. */ connectNulls?: boolean; /** * (Gantt) Override Pathfinder connector options for a series. Requires * Highcharts Gantt to be loaded. */ connectors?: PlotZigzagConnectorsOptions; /** * (Highcharts, Highstock) When the series contains less points than the * crop threshold, all points are drawn, even if the points fall outside the * visible plot area at the current zoom. The advantage of drawing all * points (including markers and columns), is that animation is performed on * updates. On the other hand, when the series contains more points than the * crop threshold, the series data is cropped to only contain points that * fall within the plot area. The advantage of cropping away invisible * points is to increase performance on large series. */ cropThreshold?: number; /** * (Highstock) You can set the cursor to "pointer" if you have click events * attached to the series, to signal to the user that the points and lines * can be clicked. * * In styled mode, the series cursor can be set with the same classes as * listed under series.color. */ cursor?: (string|CursorValue); /** * (Highstock) A name for the dash style to use for the graph, or for some * series types the outline of each shape. * * In styled mode, the stroke dash-array can be set with the same classes as * listed under series.color. */ dashStyle?: DashStyleValue; /** * (Highstock) Data grouping is the concept of sampling the data values into * larger blocks in order to ease readability and increase performance of * the JavaScript charts. Highstock by default applies data grouping when * the points become closer than a certain pixel value, determined by the * `groupPixelWidth` option. * * If data grouping is applied, the grouping information of grouped points * can be read from the Point.dataGroup. If point options other than the * data itself are set, for example `name` or `color` or custom properties, * the grouping logic doesn't know how to group it. In this case the options * of the first point instance are copied over to the group point. This can * be altered through a custom `approximation` callback function. */ dataGrouping?: PlotZigzagDataGroupingOptions; /** * (Highstock) Options for the series data labels, appearing next to each * data point. * * Since v6.2.0, multiple data labels can be applied to each single point by * defining them as an array of configs. * * In styled mode, the data labels can be styled with the * `.highcharts-data-label-box` and `.highcharts-data-label` class names * (see example). */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) Requires the Accessibility module. * * A description of the series to add to the screen reader information about * the series. */ description?: string; /** * (Highstock) The draggable-points module allows points to be moved around * or modified in the chart. In addition to the options mentioned under the * `dragDrop` API structure, the module fires three events, point.dragStart, * point.drag and point.drop. * * It requires the `modules/draggable-points.js` file to be loaded. */ dragDrop?: PlotZigzagDragDropOptions; /** * (Highstock) Enable or disable the mouse tracking for a specific series. * This includes point tooltips and click events on graphs and points. For * large datasets it improves performance. */ enableMouseTracking?: boolean; /** * (Highstock) General event handlers for the series items. These event * hooks can also be attached to the series at run time using the * `Highcharts.addEvent` function. */ events?: PlotZigzagEventsOptions; /** * (Highstock) By default, series are exposed to screen readers as regions. * By enabling this option, the series element itself will be exposed in the * same way as the data points. This is useful if the series is not used as * a grouping entity in the chart, but you still want to attach a * description to the series. * * Requires the Accessibility module. */ exposeElementToA11y?: boolean; /** * (Highstock) Determines whether the series should look for the nearest * point in both dimensions or just the x-dimension when hovering the * series. Defaults to `'xy'` for scatter series and `'x'` for most other * series. If the data has duplicate x-values, it is recommended to set this * to `'xy'` to allow hovering over all points. * * Applies only to series types using nearest neighbor search (not direct * hover) for tooltip. */ findNearestPointBy?: OptionsFindNearestPointByValue; /** * (Highstock) Defines when to display a gap in the graph, together with the * gapUnit option. * * In case when `dataGrouping` is enabled, points can be grouped into a * larger time span. This can make the grouped points to have a greater * distance than the absolute value of `gapSize` property, which will result * in disappearing graph completely. To prevent this situation the mentioned * distance between grouped points is used instead of previously defined * `gapSize`. * * In practice, this option is most often used to visualize gaps in time * series. In a stock chart, intraday data is available for daytime hours, * while gaps will appear in nights and weekends. */ gapSize?: number; /** * (Highstock) Together with gapSize, this option defines where to draw gaps * in the graph. * * When the `gapUnit` is `relative` (default), a gap size of 5 means that if * the distance between two points is greater than five times that of the * two closest points, the graph will be broken. * * When the `gapUnit` is `value`, the gap is based on absolute axis values, * which on a datetime axis is milliseconds. This also applies to the * navigator series that inherits gap options from the base series. */ gapUnit?: OptionsGapUnitValue; /** * (Highcharts, Highstock, Gantt) Whether to use the Y extremes of the total * chart width or only the zoomed area when zooming in on parts of the X * axis. By default, the Y axis adjusts to the min and max of the visible * data. Cartesian series only. */ getExtremesFromAll?: boolean; /** * (Highstock) Export-data module required. When set to `false` will prevent * the series data from being included in any form of data export. * * Since version 6.0.0 until 7.1.0 the option was existing undocumented as * `includeInCSVExport`. */ includeInDataExport?: boolean; /** * (Highcharts, Highstock, Gantt) Series labels are placed as close to the * series as possible in a natural way, seeking to avoid other series. The * goal of this feature is to make the chart more easily readable, like if a * human designer placed the labels in the optimal position. * * The series labels currently work with series types having a `graph` or an * `area`. * * Requires the `series-label.js` module. */ label?: PlotZigzagLabelOptions; /** * (Highstock) The line marks the last price from all points. */ lastPrice?: PlotZigzagLastPriceOptions; /** * (Highstock) The line marks the last price from visible range of points. */ lastVisiblePrice?: PlotZigzagLastVisiblePriceOptions; /** * (Highcharts, Highstock) The SVG value used for the `stroke-linecap` and * `stroke-linejoin` of a line graph. Round means that lines are rounded in * the ends and bends. */ linecap?: SeriesLinecapValue; /** * (Highcharts, Highstock) Pixel width of the graph line. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) The main series ID that indicator will be * based on. Required for this indicator. */ linkedTo?: string; /** * (Highstock) Options for the point markers of line-like series. Properties * like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't * have markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: PlotZigzagMarkerOptions; /** * (Highstock) The name of the series as shown in the legend, tooltip etc. * If not set, it will be based on a technical indicator type and default * params. */ name?: string; /** * (Highstock) The color for the parts of the graph or points that are below * the threshold. */ negativeColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Opacity of a series parts: line, fill (e.g. area) and * dataLabels. */ opacity?: number; /** * (Highstock) Paramters used in calculation of regression series' points. */ params?: PlotZigzagParamsOptions; /** * (Highstock) Properties for each single point. */ point?: PlotZigzagPointOptions; /** * (Highstock) Same as accessibility.pointDescriptionFormatter, but for an * individual series. Overrides the chart wide configuration. */ pointDescriptionFormatter?: Function; /** * (Highstock) Whether to select the series initially. If `showCheckbox` is * true, the checkbox next to the series name in the legend will be checked * for a selected series. */ selected?: boolean; /** * (Highstock) Whether to apply a drop shadow to the graph line. Since 2.3 * the shadow can be an object configuration containing `color`, `offsetX`, * `offsetY`, `opacity` and `width`. */ shadow?: (boolean|ShadowOptionsObject); /** * (Highstock) If true, a checkbox is displayed next to the legend item to * allow selecting the series. The state of the checkbox is determined by * the `selected` option. */ showCheckbox?: boolean; /** * (Highstock) Whether to display this particular series or series type in * the legend. The default value is `true` for standalone series, `false` * for linked series. */ showInLegend?: boolean; /** * (Highstock) If set to `true`, the accessibility module will skip past the * points in this series for keyboard navigation. */ skipKeyboardNavigation?: boolean; /** * (Highcharts, Highstock) When this is true, the series will not cause the * Y axis to cross the zero plane (or threshold option) unless the data * actually crosses the plane. * * For example, if `softThreshold` is `false`, a series of 0, 1, 2, 3 will * make the Y axis show negative values according to the `minPadding` * option. If `softThreshold` is `true`, the Y axis starts at 0. */ softThreshold?: boolean; states?: PlotZigzagStatesOptions; /** * (Highcharts, Highstock) Whether to apply steps to the line. Possible * values are `left`, `center` and `right`. */ step?: OptionsStepValue; /** * (Highstock) Sticky tracking of mouse events. When true, the `mouseOut` * event on a series isn't triggered until the mouse moves over another * series, or out of the plot area. When false, the `mouseOut` event on a * series is triggered when the mouse leaves the area around the series' * graph or markers. This also implies the tooltip when not shared. When * `stickyTracking` is false and `tooltip.shared` is false, the tooltip will * be hidden when moving the mouse between series. Defaults to true for line * and area type series, but to false for columns, pies etc. */ stickyTracking?: boolean; /** * (Highcharts, Highstock) The threshold, also called zero level or base * level. For line type series this is only used in conjunction with * negativeColor. */ threshold?: number; /** * (Highstock) A configuration object for the tooltip rendering of each * single series. Properties are inherited from tooltip, but only the * following properties can be defined on a series level. */ tooltip?: PlotZigzagTooltipOptions; /** * (Highcharts, Highstock, Gantt) When a series contains a data array that * is longer than this, only one dimensional arrays of numbers, or two * dimensional arrays with x and y values are allowed. Also, only the first * point is tested, and the rest are assumed to be the same format. This * saves expensive data checking and indexing in long series. Set it to `0` * disable. */ turboThreshold?: number; /** * (Highstock) Set the initial visibility of the series. */ visible?: boolean; /** * (Highmaps) Define the z index of the series. */ zIndex?: number; /** * (Highcharts, Highstock) Defines the Axis on which the zones are applied. */ zoneAxis?: string; /** * (Highcharts, Highstock) An array defining zones within a series. Zones * can be applied to the X axis, Y axis or Z axis for bubbles, according to * the `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the * `.highcharts-zone-{n}` class, or custom classed from the `className` * option (view live demo). */ zones?: Array<PlotZigzagZonesOptions>; } /** * (Highstock) Paramters used in calculation of regression series' points. */ export interface PlotZigzagParamsOptions { /** * (Highstock) The threshold for the value change. * * For example deviation=1 means the indicator will ignore all price * movements less than 1%. */ deviation?: number; /** * (Highstock) The point index which indicator calculations will base - high * value. * * For example using OHLC data, index=1 means the indicator will be * calculated using High values. */ highIndex?: number; /** * (Highstock) The point index which indicator calculations will base - low * value. * * For example using OHLC data, index=2 means the indicator will be * calculated using Low values. */ lowIndex?: number; } /** * (Highstock) Events for each single point. */ export interface PlotZigzagPointEventsOptions { /** * (Highstock) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highstock) Callback that fires while dragging a point. The mouse event * is passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highstock) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highstock) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highstock) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highstock) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highstock) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highstock) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highstock) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highstock) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) Properties for each single point. */ export interface PlotZigzagPointOptions { /** * (Highstock) Events for each single point. */ events?: PlotZigzagPointEventsOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotZigzagStatesHoverAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotZigzagStatesHoverHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotZigzagStatesHoverMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotZigzagStatesHoverMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotZigzagStatesHoverMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotZigzagStatesHoverMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotZigzagStatesHoverMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotZigzagStatesHoverMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotZigzagStatesHoverMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotZigzagStatesHoverMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotZigzagStatesHoverMarkerStatesHoverOptions; inactive?: PlotZigzagStatesHoverMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotZigzagStatesHoverMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotZigzagStatesHoverMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotZigzagStatesHoverMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ export interface PlotZigzagStatesHoverOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: (boolean|AnimationOptionsObject|PlotZigzagStatesHoverAnimationOptions); /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The relative brightness of the point when hovered, relative to * the normal point color. */ brightness?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotZigzagStatesHoverHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotZigzagStatesHoverMarkerOptions; } export interface PlotZigzagStatesInactiveAnimationOptions { duration?: number; } /** * (Highstock) The opposite state of a hover for series. */ export interface PlotZigzagStatesInactiveOptions { animation?: PlotZigzagStatesInactiveAnimationOptions; /** * (Highstock) Opacity of series elements (dataLabels, line, area). */ opacity?: number; } /** * (Highstock) The normal state of a series, or for point items in column, pie * and similar series. Currently only used for setting animation when returning * to normal state from hover. */ export interface PlotZigzagStatesNormalOptions { /** * (Highstock) Animation when returning to normal state after hovering. */ animation?: (boolean|AnimationOptionsObject); } export interface PlotZigzagStatesOptions { /** * (Highstock) Options for the hovered series. These settings override the * normal state options when a series is moused over or touched. */ hover?: PlotZigzagStatesHoverOptions; /** * (Highstock) The opposite state of a hover for series. */ inactive?: PlotZigzagStatesInactiveOptions; /** * (Highstock) The normal state of a series, or for point items in column, * pie and similar series. Currently only used for setting animation when * returning to normal state from hover. */ normal?: PlotZigzagStatesNormalOptions; /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ select?: PlotZigzagStatesSelectOptions; } /** * (Highcharts, Highstock) Animation setting for hovering the graph in line-type * series. */ export interface PlotZigzagStatesSelectAnimationOptions { /** * (Highcharts, Highstock) The duration of the hover animation in * milliseconds. By default the hover state animates quickly in, and slowly * back to normal. */ duration?: number; } /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie charts. * By default the halo is filled by the current point or series color with an * opacity of 0.25\. The halo can be disabled by setting the `halo` option to * `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, with * colors inherited from `.highcharts-color-{n}`. */ export interface PlotZigzagStatesSelectHaloOptions { /** * (Highcharts, Highstock) A collection of SVG attributes to override the * appearance of the halo, for example `fill`, `stroke` and `stroke-width`. */ attributes?: SVGAttributes; /** * (Highcharts, Highstock) Opacity for the halo unless a specific fill is * overridden using the `attributes` setting. Note that Highcharts is only * able to apply opacity to colors of hex or rgb(a) formats. */ opacity?: number; /** * (Highcharts, Highstock) The pixel size of the halo. For point markers * this is the radius of the halo. For pie slices it is the width of the * halo outside the slice. For bubbles it defaults to 5 and is the width of * the halo outside the bubble. */ size?: number; } /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ export interface PlotZigzagStatesSelectMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: PlotZigzagStatesSelectMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface PlotZigzagStatesSelectMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface PlotZigzagStatesSelectMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|PlotZigzagStatesSelectMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface PlotZigzagStatesSelectMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface PlotZigzagStatesSelectMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface PlotZigzagStatesSelectMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: PlotZigzagStatesSelectMarkerStatesHoverOptions; inactive?: PlotZigzagStatesSelectMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: PlotZigzagStatesSelectMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: PlotZigzagStatesSelectMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface PlotZigzagStatesSelectMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highmaps) Specific options for point in selected states, after being * selected by allowPointSelect or programmatically. */ export interface PlotZigzagStatesSelectOptions { /** * (Highcharts, Highstock) Animation setting for hovering the graph in * line-type series. */ animation?: PlotZigzagStatesSelectAnimationOptions; /** * (Highmaps) The border color of the point in this state. */ borderColor?: ColorString; /** * (Highmaps) The border width of the point in this state */ borderWidth?: number; /** * (Highmaps) The color of the shape in this state. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Enable separate styles for the hovered series to visualize * that the user hovers either the series itself or the legend. */ enabled?: boolean; /** * (Highcharts, Highstock) Options for the halo appearing around the hovered * point in line-type series as well as outside the hovered slice in pie * charts. By default the halo is filled by the current point or series * color with an opacity of 0.25\. The halo can be disabled by setting the * `halo` option to `null`. * * In styled mode, the halo is styled with the `.highcharts-halo` class, * with colors inherited from `.highcharts-color-{n}`. */ halo?: (PlotZigzagStatesSelectHaloOptions|null); /** * (Highcharts, Highstock) Pixel width of the graph line. By default this * property is undefined, and the `lineWidthPlus` property dictates how much * to increase the linewidth from normal state. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for the graph of a * hovered series. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) In Highcharts 1.0, the appearance of all markers * belonging to the hovered series. For settings on the hover state of the * individual point, see marker.states.hover. */ marker?: PlotZigzagStatesSelectMarkerOptions; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface PlotZigzagTooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } /** * (Highstock) A configuration object for the tooltip rendering of each single * series. Properties are inherited from tooltip, but only the following * properties can be defined on a series level. */ export interface PlotZigzagTooltipOptions { /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (PlotZigzagTooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highstock) Whether the tooltip should follow the mouse as it moves * across columns, pie slices and other point types with an extent. By * default it behaves this way for pie, polygon, map, sankey and wordcloud * series by override in the `plotOptions` for those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highstock) Whether the tooltip should update as the finger moves on a * touch device. If this is `true` and chart.panning is * set,`followTouchMove` will take over one-finger touches, so the user * needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highstock) A string to append to the tooltip format. */ footerFormat?: string; /** * (Highstock) The HTML of the tooltip header line. Variables are enclosed * by curly brackets. Available variables are `point.key`, `series.name`, * `series.color` and other members from the `point` and `series` objects. * The `point.key` variable contains the category name, x value or datetime * string depending on the type of axis. For datetime axes, the `point.key` * date format can be set using `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highstock) The name of a symbol to use for the border around the tooltip * header. Applies only when tooltip.split is enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highstock) The number of milliseconds to wait until the tooltip is * hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highstock) The HTML of the null point's line in the tooltip. Works * analogously to pointFormat. */ nullFormat?: string; /** * (Highstock) Callback function to format the text of the tooltip for * visible null points. Works analogously to formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highstock) Whether to allow the tooltip to render outside the chart's * SVG element box. By default (`false`), the tooltip is rendered within the * chart's SVG element, which results in the tooltip being aligned inside * the chart area. For small charts, this may result in clipping or * overlapping. When `true`, a separate SVG element is created and overlaid * on the page, allowing the tooltip to be aligned inside the page itself. */ outside?: boolean; /** * (Highstock) Padding inside the tooltip, in pixels. */ padding?: number; /** * (Highstock) The HTML of the point's line in the tooltip. Variables are * enclosed by curly brackets. Available variables are point.x, point.y, * series. name and series.color and other properties on the same form. * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix` and * `tooltip.valueSuffix` variables. This can also be overridden for each * series, which makes it a good hook for displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highstock) A callback function for formatting the HTML output for a * single point in the tooltip. Like the `pointFormat` string, but with more * flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highstock) Number of decimals in indicator series. */ valueDecimals?: number; /** * (Highstock) A string to prepend to each series' y value. Overridable in * each series' tooltip options object. */ valuePrefix?: string; /** * (Highstock) A string to append to each series' y value. Overridable in * each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * (Highcharts, Highstock) An array defining zones within a series. Zones can be * applied to the X axis, Y axis or Z axis for bubbles, according to the * `zoneAxis` option. The zone definitions have to be in ascending order * regarding to the value. * * In styled mode, the color zones are styled with the `.highcharts-zone-{n}` * class, or custom classed from the `className` option (view live demo). */ export interface PlotZigzagZonesOptions { /** * (Highcharts, Highstock) Styled mode only. A custom class name for the * zone. */ className?: string; /** * (Highcharts, Highstock) Defines the color of the series. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) A name for the dash style to use for the graph. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock) Defines the fill color for the series (in area * type series) */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The value up to where the zone extends, if * undefined the zones stretches to the last value in the series. */ value?: number; } /** * One position in relation to an axis. */ export interface PointerAxisCoordinateObject { /** * Related axis. */ axis: Axis; /** * Axis value. */ value: number; } /** * Positions in terms of axis values. */ export interface PointerAxisCoordinatesObject { /** * Positions on the x-axis. */ xAxis: Array<PointerAxisCoordinateObject>; /** * Positions on the y-axis. */ yAxis: Array<PointerAxisCoordinateObject>; } /** * Pointer coordinates. */ export interface PointerCoordinatesObject { chartX: number; chartY: number; } /** * A native browser mouse or touch event, extended with position information * relative to the Chart.container. */ export interface PointerEventObject extends PointerEvent { /** * The X coordinate of the pointer interaction relative to the chart. */ chartX: number; /** * The Y coordinate of the pointer interaction relative to the chart. */ chartY: number; } /** * Configuration hash for the data label and tooltip formatters. */ export interface PointLabelObject { /** * The point's current color. */ color: (ColorString|GradientColorObject|PatternObject); /** * The point's current color index, used in styled mode instead of `color`. * The color index is inserted in class names used for styling. */ colorIndex: number; /** * The name of the related point. */ key: (number|string); /** * The percentage for related points in a stacked series or pies. */ percentage: number; /** * The related point. */ point: Point; /** * The related series. */ series: Series; /** * The total of values in either a stack for stacked series, or a pie in a * pie series. */ total: number; /** * For categorized axes this property holds the category name for the point. * For other axes it holds the X value. */ x: (number|string); /** * The y value of the point. */ y?: number; } /** * Information about the legend click event. */ export interface PointLegendItemClickEventObject { /** * Related browser event. */ browserEvent: PointerEvent; /** * Prevent the default action of toggle the visibility of the point. */ preventDefault: Function; /** * Related point. */ target: Point; /** * Event type. */ type: "legendItemClick"; } export interface PointObject {} /** * An object containing `x` and `y` properties for the position of an element. */ export interface PositionObject { /** * X position of the element. */ x: number; /** * Y position of the element. */ y: number; } /** * Defines the center position and the radius for a gradient. */ export interface RadialGradientColorObject { /** * Center horizontal position relative to the shape. Float ranges 0-1. */ cx: number; /** * Center vertical position relative to the shape. Float ranges 0-1. */ cy: number; /** * Radius relative to the shape. Float ranges 0-1. */ r: number; } /** * (Highstock, Gantt) Positioning for the button row. */ export interface RangeSelectorButtonPositionOptions { /** * (Highstock, Gantt) The alignment of the input box. Allowed properties are * `left`, `center`, `right`. */ align?: AlignValue; /** * (Highstock, Gantt) X offset of the button row. */ x?: number; /** * (Highstock, Gantt) Y offset of the button row. */ y?: number; } /** * (Highstock) A custom data grouping object for each button. */ export interface RangeSelectorButtonsDataGroupingOptions { /** * (Highstock) The method of approximation inside a group. When for example * 30 days are grouped into one month, this determines what value should * represent the group. Possible values are "average", "averages", "open", * "high", "low", "close" and "sum". For OHLC and candlestick series the * approximation is "ohlc" by default, which finds the open, high, low and * close values within all the grouped data. For ranges, the approximation * is "range", which finds the low and high values. For multi-dimensional * data, like ranges and OHLC, "averages" will compute the average for each * dimension. * * Custom aggregate methods can be added by assigning a callback function as * the approximation. This function takes a numeric array as the argument * and should return a single numeric value or `null`. Note that the numeric * array will never contain null values, only true numbers. Instead, if null * values are present in the raw data, the numeric array will have an * `.hasNulls` property set to `true`. For single-value data sets the data * is available in the first argument of the callback function. For OHLC * data sets, all the open values are in the first argument, all high values * in the second etc. * * Since v4.2.7, grouping meta data is available in the approximation * callback from `this.dataGroupInfo`. It can be used to extract information * from the raw data. * * Defaults to `average` for line-type series, `sum` for columns, `range` * for range series and `ohlc` for OHLC and candlestick. */ approximation?: (DataGroupingApproximationValue|Function); /** * (Highstock) Datetime formats for the header of the tooltip in a stock * chart. The format can vary within a chart depending on the currently * selected time range and the current data grouping. * * The default formats are: * * (see online documentation for example) * * For each of these array definitions, the first item is the format used * when the active time span is one unit. For instance, if the current data * applies to one week, the first item of the week array is used. The second * and third items are used when the active time span is more than two * units. For instance, if the current data applies to two weeks, the second * and third item of the week array are used, and applied to the start and * end date of the time span. */ dateTimeLabelFormats?: object; /** * (Highstock) Enable or disable data grouping. */ enabled?: boolean; /** * (Highstock) When data grouping is forced, it runs no matter how small the * intervals are. This can be handy for example when the sum should be * calculated for values appearing at random times within each hour. */ forced?: boolean; /** * (Highstock) By default only points within the visible range are grouped. * Enabling this option will force data grouping to calculate all grouped * points for a given dataset. That option prevents for example a column * series from calculating a grouped point partially. The effect is similar * to Series.getExtremesFromAll but does not affect yAxis extremes. */ groupAll?: boolean; /** * (Highstock) The approximate pixel width of each group. If for example a * series with 30 points is displayed over a 600 pixel wide plot area, no * grouping is performed. If however the series contains so many points that * the spacing is less than the groupPixelWidth, Highcharts will try to * group it into appropriate groups so that each is more or less two pixels * wide. If multiple series with different group pixel widths are drawn on * the same x axis, all series will take the greatest width. For example, * line series have 2px default group width, while column series have 10px. * If combined, both the line and the column will have 10px by default. */ groupPixelWidth?: number; /** * (Highstock) Normally, a group is indexed by the start of that group, so * for example when 30 daily values are grouped into one month, that month's * x value will be the 1st of the month. This apparently shifts the data to * the left. When the smoothed option is true, this is compensated for. The * data is shifted to the middle of the group, and min and max values are * preserved. Internally, this is used in the Navigator series. */ smoothed?: boolean; /** * (Highstock) An array determining what time intervals the data is allowed * to be grouped to. Each array item is an array where the first value is * the time unit and the second value another array of allowed multiples. * Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; } export interface RangeSelectorButtonsEventsOptions { /** * (Highstock, Gantt) Fires when clicking on the rangeSelector button. One * parameter, event, is passed to the function, containing common event * information. * * (see online documentation for example) * * Return false to stop default button's click action. */ click?: RangeSelectorClickCallbackFunction; } /** * (Highstock, Gantt) An array of configuration objects for the buttons. * * Defaults to * * (see online documentation for example) */ export interface RangeSelectorButtonsOptions { /** * (Highstock, Gantt) How many units of the defined type the button should * span. If `type` is "month" and `count` is 3, the button spans three * months. */ count?: number; /** * (Highstock) A custom data grouping object for each button. */ dataGrouping?: RangeSelectorButtonsDataGroupingOptions; events?: RangeSelectorButtonsEventsOptions; /** * (Highstock, Gantt) Additional range (in milliseconds) added to the end of * the calculated time span. */ offsetMax?: number; /** * (Highstock, Gantt) Additional range (in milliseconds) added to the start * of the calculated time span. */ offsetMin?: number; /** * (Highstock, Gantt) When buttons apply dataGrouping on a series, by * default zooming in/out will deselect buttons and unset dataGrouping. * Enable this option to keep buttons selected when extremes change. */ preserveDataGrouping?: boolean; /** * (Highstock, Gantt) The text for the button itself. */ text?: string; /** * (Highstock, Gantt) Defined the time span for the button. Can be one of * `millisecond`, `second`, `minute`, `hour`, `day`, `week`, `month`, * `year`, `ytd`, and `all`. */ type?: RangeSelectorButtonTypeValue; } /** * (Highstock, Gantt) Positioning for the input boxes. Allowed properties are * `align`, `x` and `y`. */ export interface RangeSelectorInputPositionOptions { /** * (Highstock, Gantt) The alignment of the input box. Allowed properties are * `left`, `center`, `right`. */ align?: AlignValue; /** * (Highstock, Gantt) X offset of the input row. */ x?: number; /** * (Highstock, Gantt) Y offset of the input row. */ y?: number; } /** * (Highstock, Gantt) The range selector is a tool for selecting ranges to * display within the chart. It provides buttons to select preconfigured ranges * in the chart, like 1 day, 1 week, 1 month etc. It also provides input boxes * where min and max dates can be manually input. */ export interface RangeSelectorOptions { /** * (Highstock, Gantt) Whether to enable all buttons from the start. By * default buttons are only enabled if the corresponding time range exists * on the X axis, but enabling all buttons allows for dynamically loading * different time ranges. */ allButtonsEnabled?: boolean; /** * (Highstock, Gantt) Positioning for the button row. */ buttonPosition?: RangeSelectorButtonPositionOptions; /** * (Highstock, Gantt) An array of configuration objects for the buttons. * * Defaults to * * (see online documentation for example) */ buttons?: Array<RangeSelectorButtonsOptions>; /** * (Highstock, Gantt) The space in pixels between the buttons in the range * selector. */ buttonSpacing?: number; /** * (Highstock, Gantt) A collection of attributes for the buttons. The object * takes SVG attributes like `fill`, `stroke`, `stroke-width`, as well as * `style`, a collection of CSS properties for the text. * * The object can also be extended with states, so you can set * presentational options for `hover`, `select` or `disabled` button states. * * CSS styles for the text label. * * In styled mode, the buttons are styled by the * `.highcharts-range-selector-buttons .highcharts-button` rule with its * different states. */ buttonTheme?: SVGAttributes; /** * (Highstock, Gantt) Enable or disable the range selector. */ enabled?: boolean; /** * (Highstock, Gantt) When the rangeselector is floating, the plot area does * not reserve space for it. This opens for positioning anywhere on the * chart. */ floating?: boolean; /** * (Highstock, Gantt) Deprecated. The height of the range selector. * Currently it is calculated dynamically. */ height?: (number|undefined); /** * (Highstock, Gantt) The border color of the date input boxes. */ inputBoxBorderColor?: ColorString; /** * (Highstock, Gantt) The pixel height of the date input boxes. */ inputBoxHeight?: number; /** * (Highstock, Gantt) CSS for the container DIV holding the input boxes. * Deprecated as of 1.2.5\. Use inputPosition instead. */ inputBoxStyle?: CSSObject; /** * (Highstock, Gantt) The pixel width of the date input boxes. */ inputBoxWidth?: number; /** * (Highstock, Gantt) The date format in the input boxes when not selected * for editing. Defaults to `%b %e, %Y`. */ inputDateFormat?: string; /** * (Highstock, Gantt) A custom callback function to parse values entered in * the input boxes and return a valid JavaScript time as milliseconds since * 1970. */ inputDateParser?: RangeSelectorParseCallbackFunction; /** * (Highstock, Gantt) The date format in the input boxes when they are * selected for editing. This must be a format that is recognized by * JavaScript Date.parse. */ inputEditDateFormat?: string; /** * (Highstock, Gantt) Enable or disable the date input boxes. Defaults to * enabled when there is enough space, disabled if not (typically mobile). */ inputEnabled?: boolean; /** * (Highstock, Gantt) Positioning for the input boxes. Allowed properties * are `align`, `x` and `y`. */ inputPosition?: RangeSelectorInputPositionOptions; /** * (Highstock, Gantt) CSS for the HTML inputs in the range selector. * * In styled mode, the inputs are styled by the `.highcharts-range-input * text` rule in SVG mode, and `input.highcharts-range-selector` when * active. */ inputStyle?: CSSObject; /** * (Highstock, Gantt) CSS styles for the labels - the Zoom, From and To * texts. * * In styled mode, the labels are styled by the `.highcharts-range-label` * class. */ labelStyle?: CSSObject; /** * (Highstock, Gantt) The index of the button to appear pre-selected. */ selected?: number; /** * (Highstock, Gantt) The vertical alignment of the rangeselector box. * Allowed properties are `top`, `middle`, `bottom`. */ verticalAlign?: VerticalAlignValue; /** * (Highstock, Gantt) The x offset of the range selector relative to its * horizontal alignment within `chart.spacingLeft` and `chart.spacingRight`. */ x?: number; /** * (Highstock, Gantt) The y offset of the range selector relative to its * horizontal alignment within `chart.spacingLeft` and `chart.spacingRight`. */ y?: number; } /** * A rectangle. */ export interface RectangleObject { /** * Height of the rectangle. */ height: number; /** * Width of the rectangle. */ width: number; /** * Horizontal position of the rectangle. */ x: number; /** * Vertical position of the rectangle. */ y: number; } /** * (Highcharts, Highstock, Highmaps, Gantt) Allows setting a set of rules to * apply for different screen or chart sizes. Each rule specifies additional * chart options. */ export interface ResponsiveOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) A set of rules for responsive * settings. The rules are executed from the top down. */ rules?: Array<ResponsiveRulesOptions>; } /** * (Highcharts, Highstock, Highmaps, Gantt) Under which conditions the rule * applies. */ export interface ResponsiveRulesConditionOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) A callback function to gain * complete control on when the responsive rule applies. Return `true` if it * applies. This opens for checking against other metrics than the chart * size, or example the document size or other elements. */ callback?: ResponsiveCallbackFunction; /** * (Highcharts, Highstock, Highmaps, Gantt) The responsive rule applies if * the chart height is less than this. */ maxHeight?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The responsive rule applies if * the chart width is less than this. */ maxWidth?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The responsive rule applies if * the chart height is greater than this. */ minHeight?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The responsive rule applies if * the chart width is greater than this. */ minWidth?: number; } /** * (Highcharts, Highstock, Highmaps, Gantt) A set of rules for responsive * settings. The rules are executed from the top down. */ export interface ResponsiveRulesOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) A full set of chart options to * apply as overrides to the general chart options. The chart options are * applied when the given rule is active. * * A special case is configuration objects that take arrays, for example * xAxis, yAxis or series. For these collections, an `id` option is used to * map the new option set to an existing object. If an existing object of * the same id is not found, the item of the same indexupdated. So for * example, setting `chartOptions` with two series items without an `id`, * will cause the existing chart's two series to be updated with respective * options. */ chartOptions?: Options; /** * (Highcharts, Highstock, Highmaps, Gantt) Under which conditions the rule * applies. */ condition?: ResponsiveRulesConditionOptions; } /** * (Highcharts) A node in a sankey diagram. */ export interface SankeyNodeObject extends Point { /** * The color of the auto generated node. */ color: (ColorString|GradientColorObject|PatternObject); /** * The color index of the auto generated node, especially for use in styled * mode. */ colorIndex: number; /** * An optional column index of where to place the node. The default * behaviour is to place it next to the preceding node. */ column: number; /** * The id of the auto-generated node, refering to the `from` or `to` setting * of the link. */ id: string; /** * (Highcharts) The name to display for the node in data labels and * tooltips. Use this when the name is different from the `id`. Where the id * must be unique for each node, this is not necessary for the name. */ name: string; /** * The vertical offset of a node in terms of weight. Positive values shift * the node downwards, negative shift it upwards. */ offset: number; } /** * (Highstock, Gantt) The scrollbar is a means of panning over the X axis of a * stock chart. Scrollbars can also be applied to other types of axes. * * Another approach to scrollable charts is the chart.scrollablePlotArea option * that is especially suitable for simpler cartesian charts on mobile. * * In styled mode, all the presentational options for the scrollbar are replaced * by the classes `.highcharts-scrollbar-thumb`, `.highcharts-scrollbar-arrow`, * `.highcharts-scrollbar-button`, `.highcharts-scrollbar-rifles` and * `.highcharts-scrollbar-track`. */ export interface ScrollbarOptions { /** * (Highstock, Gantt) The background color of the scrollbar itself. */ barBackgroundColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock, Gantt) The color of the scrollbar's border. */ barBorderColor?: ColorString; /** * (Highstock, Gantt) The border rounding radius of the bar. */ barBorderRadius?: number; /** * (Highstock, Gantt) The width of the bar's border. */ barBorderWidth?: number; /** * (Highstock, Gantt) The color of the small arrow inside the scrollbar * buttons. */ buttonArrowColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock, Gantt) The color of scrollbar buttons. */ buttonBackgroundColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock, Gantt) The color of the border of the scrollbar buttons. */ buttonBorderColor?: ColorString; /** * (Highstock, Gantt) The corner radius of the scrollbar buttons. */ buttonBorderRadius?: number; /** * (Highstock, Gantt) The border width of the scrollbar buttons. */ buttonBorderWidth?: number; /** * (Highstock, Gantt) Enable or disable the scrollbar. */ enabled?: boolean; /** * (Highstock, Gantt) The height of the scrollbar. The height also applies * to the width of the scroll arrows so that they are always squares. * Defaults to 20 for touch devices and 14 for mouse devices. */ height?: number; /** * (Highstock, Gantt) Whether to redraw the main chart as the scrollbar or * the navigator zoomed window is moved. Defaults to `true` for modern * browsers and `false` for legacy IE browsers as well as mobile devices. */ liveRedraw?: boolean; /** * (Highstock, Gantt) The margin between the scrollbar and its axis when the * scrollbar is applied directly to an axis. */ margin?: number; /** * (Highstock, Gantt) The minimum width of the scrollbar. */ minWidth?: number; /** * (Highstock, Gantt) The color of the small rifles in the middle of the * scrollbar. */ rifleColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock, Gantt) Whether to show or hide the scrollbar when the * scrolled content is zoomed out to it full extent. */ showFull?: boolean; step?: number; /** * (Highstock, Gantt) The color of the track background. */ trackBackgroundColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock, Gantt) The color of the border of the scrollbar track. */ trackBorderColor?: ColorString; /** * (Highstock, Gantt) The corner radius of the border of the scrollbar * track. */ trackBorderRadius?: number; /** * (Highstock, Gantt) The width of the border of the scrollbar track. */ trackBorderWidth?: number; /** * (Highstock, Gantt) The z index of the scrollbar group. */ zIndex?: number; } /** * Axis-specific data of a selection. */ export interface SelectDataObject { axis: Axis; max: number; min: number; } /** * Object for select events. */ export interface SelectEventObject { originalEvent: Event; xAxis: Array<SelectDataObject>; yAxis: Array<SelectDataObject>; } /** * (Highstock) An Acceleration bands indicator. If the type option is not * specified, it is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `abands` series are defined in plotOptions.abands. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesAbandsOptions extends PlotAbandsOptions, SeriesOptions { /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "abands"; } /** * (Highstock) A `AD` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `ad` series are defined in plotOptions.ad. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesAdOptions extends PlotAdOptions, SeriesOptions { /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "ad"; } /** * Event information regarding completed animation of a series. */ export interface SeriesAfterAnimateEventObject { /** * Animated series. */ target: Series; /** * Event type. */ type: "afterAnimate"; } /** * (Highstock) An `AO` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `ao` series are defined in plotOptions.ao. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesAoOptions extends PlotAoOptions, SeriesOptions { /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "ao"; } /** * (Highstock) An `Absolute Price Oscillator` series. If the type option is not * specified, it is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `apo` series are defined in plotOptions.apo. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesApoOptions extends PlotApoOptions, SeriesOptions { /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "apo"; } export interface SeriesAreaDataAccessibilityOptions { /** * (Highcharts, Highstock) Provide a description of the data point, * announced to screen readers. */ description?: string; } /** * (Highcharts, Highstock) Options for the drag handles. */ export interface SeriesAreaDataDragDropDragHandleOptions { /** * (Highcharts, Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts, Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The mouse cursor to use for the drag handles. By * default this is intelligently switching between `ew-resize` and * `ns-resize` depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts, Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts, Highstock) Function to define the SVG path to use for the * drag handles. Takes the point as argument. Should return an SVG path in * array format. The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts, Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box default state. */ export interface SeriesAreaDataDragDropGuideBoxDefaultOptions { /** * (Highcharts, Highstock) CSS class name of the guide box in this state. * Defaults to `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts, Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Guide box cursor. */ cursor?: string; /** * (Highcharts, Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts, Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts, Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box. The guide box has * one state by default, the `default` state. */ export interface SeriesAreaDataDragDropGuideBoxOptions { /** * (Highcharts, Highstock) Style options for the guide box default state. */ default?: SeriesAreaDataDragDropGuideBoxDefaultOptions; } /** * (Highcharts, Highstock) Point specific options for the draggable-points * module. Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesAreaDataDragDropOptions { /** * (Highcharts, Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts, Highstock) Enable dragging in the Y dimension. Note that * this is not supported for TreeGrid axes (the default axis type in Gantt * charts). */ draggableY?: boolean; /** * (Highcharts, Highstock) Options for the drag handles. */ dragHandle?: SeriesAreaDataDragDropDragHandleOptions; /** * (Highcharts, Highstock) Set the maximum X value the points can be moved * to. */ dragMaxX?: number; /** * (Highcharts, Highstock) Set the maximum Y value the points can be moved * to. */ dragMaxY?: number; /** * (Highcharts, Highstock) Set the minimum X value the points can be moved * to. */ dragMinX?: number; /** * (Highcharts, Highstock) Set the minimum Y value the points can be moved * to. */ dragMinY?: number; /** * (Highcharts, Highstock) The X precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionX?: number; /** * (Highcharts, Highstock) The Y precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionY?: number; /** * (Highcharts, Highstock) The amount of pixels to drag the pointer before * it counts as a drag operation. This prevents drag/drop to fire when just * clicking or selecting points. */ dragSensitivity?: number; /** * (Highcharts, Highstock) Group the points by a property. Points with the * same property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts, Highstock) Style options for the guide box. The guide box * has one state by default, the `default` state. */ guideBox?: (SeriesAreaDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts, Highstock) Update points as they are dragged. If false, a * guide box is drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesAreaDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts, Highstock) Options for the point markers of line-like series. * Properties like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't have * markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface SeriesAreaDataMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: SeriesAreaDataMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface SeriesAreaDataMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface SeriesAreaDataMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|SeriesAreaDataMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface SeriesAreaDataMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface SeriesAreaDataMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface SeriesAreaDataMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: SeriesAreaDataMarkerStatesHoverOptions; inactive?: SeriesAreaDataMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: SeriesAreaDataMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: SeriesAreaDataMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface SeriesAreaDataMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts, Highstock) An array of data points for the series. For the * `area` series type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will be * interpreted as `y` options. The `x` values will be automatically calculated, * either starting at 0 and incremented by 1, or from `pointStart` * and * `pointInterval` given in the series options. If the axis has categories, * these will be used. Example:(see online documentation for example) * * 2. An array of arrays with 2 values. In this case, the values correspond to * `x,y`. If the first value is a string, it is applied as the name of the * point, and the `x` value is inferred.(see online documentation for example) * * 3. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesAreaDataOptions { [key: string]: any; accessibility?: SeriesAreaDataAccessibilityOptions; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highstock, Gantt) Individual color for the point. By default * the color is pulled from the global `colors` array. * * In styled mode, the `color` option doesn't take effect. Instead, use * `colorIndex`. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts, Highstock) A description of the point to add to the screen * reader information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts, Highstock) Point specific options for the draggable-points * module. Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesAreaDataDragDropOptions; /** * (Highcharts) The `id` of a series in the drilldown.series array to use * for a drilldown for this point. */ drilldown?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesAreaDataEventsOptions; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts, Highstock) The rank for this point's data label in case of * collision. If two data labels are about to overlap, only the one with the * highest `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts, Highstock) Options for the point markers of line-like * series. Properties like `fillColor`, `lineColor` and `lineWidth` define * the visual appearance of the markers. Other series types, like column * series, don't have markers, but have visual options on the series level * instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: SeriesAreaDataMarkerOptions; /** * (Highcharts, Highstock) The name of the point as shown in the legend, * tooltip, dataLabels etc. */ name?: string; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts, Highstock) The x value of the point. For datetime axes, the * X value is the timestamp in milliseconds since 1970. */ x?: number; /** * (Highcharts, Highstock) The y value of the point. */ y?: (number|null); } /** * (Highcharts, Highstock) A `area` series. If the type option is not specified, * it is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `area` series are defined in plotOptions.area. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesAreaOptions extends PlotAreaOptions, SeriesOptions { /** * (Highcharts, Highstock) An array of data points for the series. For the * `area` series type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will * be interpreted as `y` options. The `x` values will be automatically * calculated, either starting at 0 and incremented by 1, or from * `pointStart` * and `pointInterval` given in the series options. If the * axis has categories, these will be used. Example:(see online * documentation for example) * * 2. An array of arrays with 2 values. In this case, the values correspond * to `x,y`. If the first value is a string, it is applied as the name of * the point, and the `x` value is inferred.(see online documentation for * example) * * 3. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) */ data?: Array<(number|[(number|string), (number|null)]|null|SeriesAreaDataOptions)>; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "area"; /** * Not available */ useOhlcData?: undefined; } export interface SeriesArearangeDataAccessibilityOptions { /** * (Highcharts, Highstock) Provide a description of the data point, * announced to screen readers. */ description?: string; } /** * (Highcharts, Highstock) Options for the drag handles. */ export interface SeriesArearangeDataDragDropDragHandleOptions { /** * (Highcharts, Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts, Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The mouse cursor to use for the drag handles. By * default this is intelligently switching between `ew-resize` and * `ns-resize` depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts, Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts, Highstock) Function to define the SVG path to use for the * drag handles. Takes the point as argument. Should return an SVG path in * array format. The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts, Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box default state. */ export interface SeriesArearangeDataDragDropGuideBoxDefaultOptions { /** * (Highcharts, Highstock) CSS class name of the guide box in this state. * Defaults to `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts, Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Guide box cursor. */ cursor?: string; /** * (Highcharts, Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts, Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts, Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box. The guide box has * one state by default, the `default` state. */ export interface SeriesArearangeDataDragDropGuideBoxOptions { /** * (Highcharts, Highstock) Style options for the guide box default state. */ default?: SeriesArearangeDataDragDropGuideBoxDefaultOptions; } /** * (Highcharts, Highstock) Point specific options for the draggable-points * module. Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesArearangeDataDragDropOptions { /** * (Highcharts, Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts, Highstock) Enable dragging in the Y dimension. Note that * this is not supported for TreeGrid axes (the default axis type in Gantt * charts). */ draggableY?: boolean; /** * (Highcharts, Highstock) Options for the drag handles. */ dragHandle?: SeriesArearangeDataDragDropDragHandleOptions; /** * (Highcharts, Highstock) Set the maximum X value the points can be moved * to. */ dragMaxX?: number; /** * (Highcharts, Highstock) Set the maximum Y value the points can be moved * to. */ dragMaxY?: number; /** * (Highcharts, Highstock) Set the minimum X value the points can be moved * to. */ dragMinX?: number; /** * (Highcharts, Highstock) Set the minimum Y value the points can be moved * to. */ dragMinY?: number; /** * (Highcharts, Highstock) The X precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionX?: number; /** * (Highcharts, Highstock) The Y precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionY?: number; /** * (Highcharts, Highstock) The amount of pixels to drag the pointer before * it counts as a drag operation. This prevents drag/drop to fire when just * clicking or selecting points. */ dragSensitivity?: number; /** * (Highcharts, Highstock) Group the points by a property. Points with the * same property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts, Highstock) Style options for the guide box. The guide box * has one state by default, the `default` state. */ guideBox?: (SeriesArearangeDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts, Highstock) Update points as they are dragged. If false, a * guide box is drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesArearangeDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts, Highstock) An array of data points for the series. For the * `arearange` series type, points can be given in the following ways: * * 1. An array of arrays with 3 or 2 values. In this case, the values correspond * to `x,low,high`. If the first value is a string, it is applied as the name of * the point, and the `x` value is inferred. The `x` value can also be omitted, * in which case the inner arrays should be of length 2\. Then the `x` value is * automatically calculated, either starting at 0 and incremented by 1, or from * `pointStart` and `pointInterval` given in the series options.(see online * documentation for example) * * 2. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesArearangeDataOptions { [key: string]: any; accessibility?: SeriesArearangeDataAccessibilityOptions; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highstock, Gantt) Individual color for the point. By default * the color is pulled from the global `colors` array. * * In styled mode, the `color` option doesn't take effect. Instead, use * `colorIndex`. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts, Highstock) A description of the point to add to the screen * reader information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts, Highstock) Point specific options for the draggable-points * module. Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesArearangeDataDragDropOptions; /** * (Highcharts) The `id` of a series in the drilldown.series array to use * for a drilldown for this point. */ drilldown?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesArearangeDataEventsOptions; /** * (Highcharts, Highstock) The high or maximum value for each data point. */ high?: number; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts, Highstock) The rank for this point's data label in case of * collision. If two data labels are about to overlap, only the one with the * highest `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts, Highstock) The low or minimum value for each data point. */ low?: number; /** * (Highcharts, Highstock) The name of the point as shown in the legend, * tooltip, dataLabels etc. */ name?: string; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts, Highstock) The x value of the point. For datetime axes, the * X value is the timestamp in milliseconds since 1970. */ x?: number; } /** * (Highcharts, Highstock) A `arearange` series. If the type option is not * specified, it is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `arearange` series are defined in plotOptions.arearange. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesArearangeOptions extends PlotArearangeOptions, SeriesOptions { /** * (Highcharts, Highstock) An array of data points for the series. For the * `arearange` series type, points can be given in the following ways: * * 1. An array of arrays with 3 or 2 values. In this case, the values * correspond to `x,low,high`. If the first value is a string, it is applied * as the name of the point, and the `x` value is inferred. The `x` value * can also be omitted, in which case the inner arrays should be of length * 2\. Then the `x` value is automatically calculated, either starting at 0 * and incremented by 1, or from `pointStart` and `pointInterval` given in * the series options.(see online documentation for example) * * 2. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) */ data?: Array<([(number|string), number]|[(number|string), number, number]|SeriesArearangeDataOptions)>; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * Not available */ stack?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "arearange"; } export interface SeriesAreasplineDataAccessibilityOptions { /** * (Highcharts, Highstock) Provide a description of the data point, * announced to screen readers. */ description?: string; } /** * (Highcharts, Highstock) Options for the drag handles. */ export interface SeriesAreasplineDataDragDropDragHandleOptions { /** * (Highcharts, Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts, Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The mouse cursor to use for the drag handles. By * default this is intelligently switching between `ew-resize` and * `ns-resize` depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts, Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts, Highstock) Function to define the SVG path to use for the * drag handles. Takes the point as argument. Should return an SVG path in * array format. The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts, Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box default state. */ export interface SeriesAreasplineDataDragDropGuideBoxDefaultOptions { /** * (Highcharts, Highstock) CSS class name of the guide box in this state. * Defaults to `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts, Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Guide box cursor. */ cursor?: string; /** * (Highcharts, Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts, Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts, Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box. The guide box has * one state by default, the `default` state. */ export interface SeriesAreasplineDataDragDropGuideBoxOptions { /** * (Highcharts, Highstock) Style options for the guide box default state. */ default?: SeriesAreasplineDataDragDropGuideBoxDefaultOptions; } /** * (Highcharts, Highstock) Point specific options for the draggable-points * module. Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesAreasplineDataDragDropOptions { /** * (Highcharts, Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts, Highstock) Enable dragging in the Y dimension. Note that * this is not supported for TreeGrid axes (the default axis type in Gantt * charts). */ draggableY?: boolean; /** * (Highcharts, Highstock) Options for the drag handles. */ dragHandle?: SeriesAreasplineDataDragDropDragHandleOptions; /** * (Highcharts, Highstock) Set the maximum X value the points can be moved * to. */ dragMaxX?: number; /** * (Highcharts, Highstock) Set the maximum Y value the points can be moved * to. */ dragMaxY?: number; /** * (Highcharts, Highstock) Set the minimum X value the points can be moved * to. */ dragMinX?: number; /** * (Highcharts, Highstock) Set the minimum Y value the points can be moved * to. */ dragMinY?: number; /** * (Highcharts, Highstock) The X precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionX?: number; /** * (Highcharts, Highstock) The Y precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionY?: number; /** * (Highcharts, Highstock) The amount of pixels to drag the pointer before * it counts as a drag operation. This prevents drag/drop to fire when just * clicking or selecting points. */ dragSensitivity?: number; /** * (Highcharts, Highstock) Group the points by a property. Points with the * same property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts, Highstock) Style options for the guide box. The guide box * has one state by default, the `default` state. */ guideBox?: (SeriesAreasplineDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts, Highstock) Update points as they are dragged. If false, a * guide box is drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesAreasplineDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts, Highstock) Options for the point markers of line-like series. * Properties like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't have * markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface SeriesAreasplineDataMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: SeriesAreasplineDataMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface SeriesAreasplineDataMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface SeriesAreasplineDataMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|SeriesAreasplineDataMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface SeriesAreasplineDataMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface SeriesAreasplineDataMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface SeriesAreasplineDataMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: SeriesAreasplineDataMarkerStatesHoverOptions; inactive?: SeriesAreasplineDataMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: SeriesAreasplineDataMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: SeriesAreasplineDataMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface SeriesAreasplineDataMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts, Highstock) An array of data points for the series. For the * `areaspline` series type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will be * interpreted as `y` options. The `x` values will be automatically calculated, * either starting at 0 and incremented by 1, or from `pointStart` and * `pointInterval` given in the series options. If the axis has categories, * these will be used. Example:(see online documentation for example) * * 2. An array of arrays with 2 values. In this case, the values correspond to * `x,y`. If the first value is a string, it is applied as the name of the * point, and the `x` value is inferred.(see online documentation for example) * * 3. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesAreasplineDataOptions { [key: string]: any; accessibility?: SeriesAreasplineDataAccessibilityOptions; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highstock, Gantt) Individual color for the point. By default * the color is pulled from the global `colors` array. * * In styled mode, the `color` option doesn't take effect. Instead, use * `colorIndex`. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts, Highstock) A description of the point to add to the screen * reader information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts, Highstock) Point specific options for the draggable-points * module. Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesAreasplineDataDragDropOptions; /** * (Highcharts) The `id` of a series in the drilldown.series array to use * for a drilldown for this point. */ drilldown?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesAreasplineDataEventsOptions; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts, Highstock) The rank for this point's data label in case of * collision. If two data labels are about to overlap, only the one with the * highest `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts, Highstock) Options for the point markers of line-like * series. Properties like `fillColor`, `lineColor` and `lineWidth` define * the visual appearance of the markers. Other series types, like column * series, don't have markers, but have visual options on the series level * instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: SeriesAreasplineDataMarkerOptions; /** * (Highcharts, Highstock) The name of the point as shown in the legend, * tooltip, dataLabels etc. */ name?: string; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts, Highstock) The x value of the point. For datetime axes, the * X value is the timestamp in milliseconds since 1970. */ x?: number; /** * (Highcharts, Highstock) The y value of the point. */ y?: (number|null); } /** * (Highcharts, Highstock) A `areaspline` series. If the type option is not * specified, it is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `areaspline` series are defined in plotOptions.areaspline. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesAreasplineOptions extends PlotAreasplineOptions, SeriesOptions { /** * (Highcharts, Highstock) An array of data points for the series. For the * `areaspline` series type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will * be interpreted as `y` options. The `x` values will be automatically * calculated, either starting at 0 and incremented by 1, or from * `pointStart` and `pointInterval` given in the series options. If the axis * has categories, these will be used. Example:(see online documentation for * example) * * 2. An array of arrays with 2 values. In this case, the values correspond * to `x,y`. If the first value is a string, it is applied as the name of * the point, and the `x` value is inferred.(see online documentation for * example) * * 3. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) */ data?: Array<(number|[(number|string), (number|null)]|null|SeriesAreasplineDataOptions)>; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "areaspline"; } export interface SeriesAreasplinerangeDataAccessibilityOptions { /** * (Highcharts, Highstock) Provide a description of the data point, * announced to screen readers. */ description?: string; } /** * (Highcharts, Highstock) Options for the drag handles. */ export interface SeriesAreasplinerangeDataDragDropDragHandleOptions { /** * (Highcharts, Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts, Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The mouse cursor to use for the drag handles. By * default this is intelligently switching between `ew-resize` and * `ns-resize` depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts, Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts, Highstock) Function to define the SVG path to use for the * drag handles. Takes the point as argument. Should return an SVG path in * array format. The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts, Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box default state. */ export interface SeriesAreasplinerangeDataDragDropGuideBoxDefaultOptions { /** * (Highcharts, Highstock) CSS class name of the guide box in this state. * Defaults to `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts, Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Guide box cursor. */ cursor?: string; /** * (Highcharts, Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts, Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts, Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box. The guide box has * one state by default, the `default` state. */ export interface SeriesAreasplinerangeDataDragDropGuideBoxOptions { /** * (Highcharts, Highstock) Style options for the guide box default state. */ default?: SeriesAreasplinerangeDataDragDropGuideBoxDefaultOptions; } /** * (Highcharts, Highstock) Point specific options for the draggable-points * module. Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesAreasplinerangeDataDragDropOptions { /** * (Highcharts, Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts, Highstock) Enable dragging in the Y dimension. Note that * this is not supported for TreeGrid axes (the default axis type in Gantt * charts). */ draggableY?: boolean; /** * (Highcharts, Highstock) Options for the drag handles. */ dragHandle?: SeriesAreasplinerangeDataDragDropDragHandleOptions; /** * (Highcharts, Highstock) Set the maximum X value the points can be moved * to. */ dragMaxX?: number; /** * (Highcharts, Highstock) Set the maximum Y value the points can be moved * to. */ dragMaxY?: number; /** * (Highcharts, Highstock) Set the minimum X value the points can be moved * to. */ dragMinX?: number; /** * (Highcharts, Highstock) Set the minimum Y value the points can be moved * to. */ dragMinY?: number; /** * (Highcharts, Highstock) The X precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionX?: number; /** * (Highcharts, Highstock) The Y precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionY?: number; /** * (Highcharts, Highstock) The amount of pixels to drag the pointer before * it counts as a drag operation. This prevents drag/drop to fire when just * clicking or selecting points. */ dragSensitivity?: number; /** * (Highcharts, Highstock) Group the points by a property. Points with the * same property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts, Highstock) Style options for the guide box. The guide box * has one state by default, the `default` state. */ guideBox?: (SeriesAreasplinerangeDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts, Highstock) Update points as they are dragged. If false, a * guide box is drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesAreasplinerangeDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts, Highstock) An array of data points for the series. For the * `areasplinerange` series type, points can be given in the following ways: * * 1. An array of arrays with 3 or 2 values. In this case, the values correspond * to `x,low,high`. If the first value is a string, it is applied as the name of * the point, and the `x` value is inferred. The `x` value can also be omitted, * in which case the inner arrays should be of length 2\. Then the `x` value is * automatically calculated, either starting at 0 and incremented by 1, or from * `pointStart` and `pointInterval` given in the series options.(see online * documentation for example) * * 2. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesAreasplinerangeDataOptions { [key: string]: any; accessibility?: SeriesAreasplinerangeDataAccessibilityOptions; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highstock, Gantt) Individual color for the point. By default * the color is pulled from the global `colors` array. * * In styled mode, the `color` option doesn't take effect. Instead, use * `colorIndex`. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts, Highstock) A description of the point to add to the screen * reader information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts, Highstock) Point specific options for the draggable-points * module. Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesAreasplinerangeDataDragDropOptions; /** * (Highcharts) The `id` of a series in the drilldown.series array to use * for a drilldown for this point. */ drilldown?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesAreasplinerangeDataEventsOptions; /** * (Highcharts, Highstock) The high or maximum value for each data point. */ high?: number; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts, Highstock) The rank for this point's data label in case of * collision. If two data labels are about to overlap, only the one with the * highest `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts, Highstock) The low or minimum value for each data point. */ low?: number; /** * (Highcharts, Highstock) The name of the point as shown in the legend, * tooltip, dataLabels etc. */ name?: string; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts, Highstock) The x value of the point. For datetime axes, the * X value is the timestamp in milliseconds since 1970. */ x?: number; } /** * (Highcharts, Highstock) A `areasplinerange` series. If the type option is not * specified, it is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `areasplinerange` series are defined in * plotOptions.areasplinerange. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesAreasplinerangeOptions extends PlotAreasplinerangeOptions, SeriesOptions { /** * (Highcharts, Highstock) An array of data points for the series. For the * `areasplinerange` series type, points can be given in the following ways: * * 1. An array of arrays with 3 or 2 values. In this case, the values * correspond to `x,low,high`. If the first value is a string, it is applied * as the name of the point, and the `x` value is inferred. The `x` value * can also be omitted, in which case the inner arrays should be of length * 2\. Then the `x` value is automatically calculated, either starting at 0 * and incremented by 1, or from `pointStart` and `pointInterval` given in * the series options.(see online documentation for example) * * 2. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) */ data?: Array<([(number|string), number]|[(number|string), number, number]|SeriesAreasplinerangeDataOptions)>; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * Not available */ stack?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "areasplinerange"; } /** * (Highstock) A Aroon indicator. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `aroon` series are defined in plotOptions.aroon. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesAroonOptions extends PlotAroonOptions, SeriesOptions { /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "aroon"; } /** * (Highstock) An `Aroon Oscillator` series. If the type option is not * specified, it is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `aroonoscillator` series are defined in * plotOptions.aroonoscillator. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesAroonoscillatorOptions extends PlotAroonoscillatorOptions, SeriesOptions { /** * Not available */ aroonDown?: undefined; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "aroonoscillator"; } /** * (Highstock) A `ATR` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `atr` series are defined in plotOptions.atr. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesAtrOptions extends PlotAtrOptions, SeriesOptions { /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "atr"; } export interface SeriesBarDataAccessibilityOptions { /** * (Highcharts) Provide a description of the data point, announced to screen * readers. */ description?: string; } /** * (Highcharts) Options for the drag handles. */ export interface SeriesBarDataDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface SeriesBarDataDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface SeriesBarDataDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: SeriesBarDataDragDropGuideBoxDefaultOptions; } /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesBarDataDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: SeriesBarDataDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (SeriesBarDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesBarDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) An array of data points for the series. For the `bar` series * type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will be * interpreted as `y` options. The `x` values will be automatically calculated, * either starting at 0 and incremented by 1, or from `pointStart` and * `pointInterval` given in the series options. If the axis has categories, * these will be used. Example:(see online documentation for example) * * 2. An array of arrays with 2 values. In this case, the values correspond to * `x,y`. If the first value is a string, it is applied as the name of the * point, and the `x` value is inferred.(see online documentation for example) * * 3. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesBarDataOptions { [key: string]: any; accessibility?: SeriesBarDataAccessibilityOptions; /** * (Highcharts, Highstock) The color of the border surrounding the column or * bar. * * In styled mode, the border stroke can be set with the `.highcharts-point` * rule. */ borderColor?: ColorString; /** * (Highcharts, Highstock) The width of the border surrounding the column or * bar. * * In styled mode, the stroke width can be set with the `.highcharts-point` * rule. */ borderWidth?: number; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highstock, Gantt) Individual color for the point. By default * the color is pulled from the global `colors` array. * * In styled mode, the `color` option doesn't take effect. Instead, use * `colorIndex`. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) A description of the point to add to the screen reader * information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesBarDataDragDropOptions; /** * (Highcharts) The `id` of a series in the drilldown.series array to use * for a drilldown for this point. */ drilldown?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesBarDataEventsOptions; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts) The rank for this point's data label in case of collision. * If two data labels are about to overlap, only the one with the highest * `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts) The name of the point as shown in the legend, tooltip, * dataLabels etc. */ name?: string; /** * (Highcharts, Highstock, Gantt) A pixel value specifying a fixed width for * the column or bar. Overrides pointWidth on the series. */ pointWidth?: number; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts, Highstock) The x value of the point. For datetime axes, the * X value is the timestamp in milliseconds since 1970. */ x?: number; /** * (Highcharts, Highstock) The y value of the point. */ y?: (number|null); } /** * (Highcharts) A `bar` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `bar` series are defined in plotOptions.bar. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesBarOptions extends PlotBarOptions, SeriesOptions { /** * (Highcharts) An array of data points for the series. For the `bar` series * type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will * be interpreted as `y` options. The `x` values will be automatically * calculated, either starting at 0 and incremented by 1, or from * `pointStart` and `pointInterval` given in the series options. If the axis * has categories, these will be used. Example:(see online documentation for * example) * * 2. An array of arrays with 2 values. In this case, the values correspond * to `x,y`. If the first value is a string, it is applied as the name of * the point, and the `x` value is inferred.(see online documentation for * example) * * 3. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) */ data?: Array<(number|[(number|string), (number|null)]|null|SeriesBarDataOptions)>; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "bar"; } /** * (Highstock) A bollinger bands indicator. If the type option is not specified, * it is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `bb` series are defined in plotOptions.bb. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesBbOptions extends PlotBbOptions, SeriesOptions { /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "bb"; } /** * (Highcharts) A `bellcurve` series. If the type option is not specified, it is * inherited from chart.type. * * For options that apply to multiple series, it is recommended to add them to * the plotOptions.series options structure. To apply to all series of this * specific type, apply it to plotOptions.bellcurve. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `bellcurve` series are defined in plotOptions.bellcurve. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesBellcurveOptions extends PlotBellcurveOptions, SeriesOptions { /** * (Highcharts) An integer identifying the index to use for the base series, * or a string representing the id of the series. */ baseSeries?: (number|string); /** * Not available */ data?: undefined; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "bellcurve"; } export interface SeriesBoxplotDataAccessibilityOptions { /** * (Highcharts) Provide a description of the data point, announced to screen * readers. */ description?: string; } /** * (Highcharts) Options for the drag handles. */ export interface SeriesBoxplotDataDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface SeriesBoxplotDataDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface SeriesBoxplotDataDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: SeriesBoxplotDataDragDropGuideBoxDefaultOptions; } /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesBoxplotDataDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: SeriesBoxplotDataDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (SeriesBoxplotDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesBoxplotDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) An array of data points for the series. For the `boxplot` series * type, points can be given in the following ways: * * 1. An array of arrays with 6 or 5 values. In this case, the values correspond * to `x,low,q1,median,q3,high`. If the first value is a string, it is applied * as the name of the point, and the `x` value is inferred. The `x` value can * also be omitted, in which case the inner arrays should be of length 5. Then * the `x` value is automatically calculated, either starting at 0 and * incremented by 1, or from `pointStart` and `pointInterval` given in the * series options.(see online documentation for example) * * 2. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesBoxplotDataOptions { [key: string]: any; accessibility?: SeriesBoxplotDataAccessibilityOptions; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highstock, Gantt) Individual color for the point. By default * the color is pulled from the global `colors` array. * * In styled mode, the `color` option doesn't take effect. Instead, use * `colorIndex`. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) A description of the point to add to the screen reader * information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesBoxplotDataDragDropOptions; /** * (Highcharts) The `id` of a series in the drilldown.series array to use * for a drilldown for this point. */ drilldown?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesBoxplotDataEventsOptions; /** * (Highcharts) The `high` value for each data point, signifying the highest * value in the sample set. The top whisker is drawn here. */ high?: number; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts) The rank for this point's data label in case of collision. * If two data labels are about to overlap, only the one with the highest * `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts) The `low` value for each data point, signifying the lowest * value in the sample set. The bottom whisker is drawn here. */ low?: number; /** * (Highcharts) The median for each data point. This is drawn as a line * through the middle area of the box. */ median?: number; /** * (Highcharts) The name of the point as shown in the legend, tooltip, * dataLabels etc. */ name?: string; /** * (Highcharts) The lower quartile for each data point. This is the bottom * of the box. */ q1?: number; /** * (Highcharts) The higher quartile for each data point. This is the top of * the box. */ q3?: number; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts, Highstock) The x value of the point. For datetime axes, the * X value is the timestamp in milliseconds since 1970. */ x?: number; /** * (Highcharts, Highstock) The y value of the point. */ y?: (number|null); } /** * (Highcharts) A `boxplot` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `boxplot` series are defined in plotOptions.boxplot. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesBoxplotOptions extends PlotBoxplotOptions, SeriesOptions { /** * (Highcharts) An array of data points for the series. For the `boxplot` * series type, points can be given in the following ways: * * 1. An array of arrays with 6 or 5 values. In this case, the values * correspond to `x,low,q1,median,q3,high`. If the first value is a string, * it is applied as the name of the point, and the `x` value is inferred. * The `x` value can also be omitted, in which case the inner arrays should * be of length 5. Then the `x` value is automatically calculated, either * starting at 0 and incremented by 1, or from `pointStart` and * `pointInterval` given in the series options.(see online documentation for * example) * * 2. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) */ data?: Array<([(number|string), number, number, number, number]|[(number|string), number, number, number, number, number]|SeriesBoxplotDataOptions)>; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * Not available */ stack?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "boxplot"; } export interface SeriesBubbleDataAccessibilityOptions { /** * (Highcharts) Provide a description of the data point, announced to screen * readers. */ description?: string; } /** * (Highcharts) Options for the drag handles. */ export interface SeriesBubbleDataDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface SeriesBubbleDataDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface SeriesBubbleDataDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: SeriesBubbleDataDragDropGuideBoxDefaultOptions; } /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesBubbleDataDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: SeriesBubbleDataDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (SeriesBubbleDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesBubbleDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) An array of data points for the series. For the `bubble` series * type, points can be given in the following ways: * * 1. An array of arrays with 3 or 2 values. In this case, the values correspond * to `x,y,z`. If the first value is a string, it is applied as the name of the * point, and the `x` value is inferred. The `x` value can also be omitted, in * which case the inner arrays should be of length 2\. Then the `x` value is * automatically calculated, either starting at 0 and incremented by 1, or from * `pointStart` and `pointInterval` given in the series options.(see online * documentation for example) * * 2. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesBubbleDataOptions { [key: string]: any; accessibility?: SeriesBubbleDataAccessibilityOptions; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highstock, Gantt) Individual color for the point. By default * the color is pulled from the global `colors` array. * * In styled mode, the `color` option doesn't take effect. Instead, use * `colorIndex`. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) A description of the point to add to the screen reader * information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesBubbleDataDragDropOptions; /** * (Highcharts) The `id` of a series in the drilldown.series array to use * for a drilldown for this point. */ drilldown?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesBubbleDataEventsOptions; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts) The rank for this point's data label in case of collision. * If two data labels are about to overlap, only the one with the highest * `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts) The name of the point as shown in the legend, tooltip, * dataLabels etc. */ name?: string; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts, Highstock) The x value of the point. For datetime axes, the * X value is the timestamp in milliseconds since 1970. */ x?: number; /** * (Highcharts, Highstock) The y value of the point. */ y?: (number|null); /** * (Highcharts) The size value for each bubble. The bubbles' diameters are * computed based on the `z`, and controlled by series options like * `minSize`, `maxSize`, `sizeBy`, `zMin` and `zMax`. */ z?: number; } /** * (Highcharts, Highstock) A `bubble` series. If the type option is not * specified, it is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `bubble` series are defined in plotOptions.bubble. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesBubbleOptions extends PlotBubbleOptions, SeriesOptions { /** * (Highcharts) An array of data points for the series. For the `bubble` * series type, points can be given in the following ways: * * 1. An array of arrays with 3 or 2 values. In this case, the values * correspond to `x,y,z`. If the first value is a string, it is applied as * the name of the point, and the `x` value is inferred. The `x` value can * also be omitted, in which case the inner arrays should be of length 2\. * Then the `x` value is automatically calculated, either starting at 0 and * incremented by 1, or from `pointStart` and `pointInterval` given in the * series options.(see online documentation for example) * * 2. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) */ data?: Array<([(number|string), number]|[(number|string), number, number]|SeriesBubbleDataOptions)>; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * Not available */ stack?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "bubble"; } export interface SeriesBulletDataAccessibilityOptions { /** * (Highcharts) Provide a description of the data point, announced to screen * readers. */ description?: string; } /** * (Highcharts) Options for the drag handles. */ export interface SeriesBulletDataDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface SeriesBulletDataDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface SeriesBulletDataDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: SeriesBulletDataDragDropGuideBoxDefaultOptions; } /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesBulletDataDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: SeriesBulletDataDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (SeriesBulletDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesBulletDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) An array of data points for the series. For the `bullet` series * type, points can be given in the following ways: * * 1. An array of arrays with 3 or 2 values. In this case, the values correspond * to `x,y,target`. If the first value is a string, it is applied as the name of * the point, and the `x` value is inferred. The `x` value can also be omitted, * in which case the inner arrays should be of length 2\. Then the `x` value is * automatically calculated, either starting at 0 and incremented by 1, or from * `pointStart` and `pointInterval` given in the series options.(see online * documentation for example) * * 2. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesBulletDataOptions { [key: string]: any; accessibility?: SeriesBulletDataAccessibilityOptions; /** * (Highcharts, Highstock) The color of the border surrounding the column or * bar. * * In styled mode, the border stroke can be set with the `.highcharts-point` * rule. */ borderColor?: ColorString; /** * (Highcharts, Highstock) The width of the border surrounding the column or * bar. * * In styled mode, the stroke width can be set with the `.highcharts-point` * rule. */ borderWidth?: number; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highstock, Gantt) Individual color for the point. By default * the color is pulled from the global `colors` array. * * In styled mode, the `color` option doesn't take effect. Instead, use * `colorIndex`. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) A description of the point to add to the screen reader * information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesBulletDataDragDropOptions; /** * (Highcharts) The `id` of a series in the drilldown.series array to use * for a drilldown for this point. */ drilldown?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesBulletDataEventsOptions; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts) The rank for this point's data label in case of collision. * If two data labels are about to overlap, only the one with the highest * `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts) The name of the point as shown in the legend, tooltip, * dataLabels etc. */ name?: string; /** * (Highcharts, Highstock, Gantt) A pixel value specifying a fixed width for * the column or bar. Overrides pointWidth on the series. */ pointWidth?: number; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts) The target value of a point. */ target?: number; /** * (Highcharts) Individual target options for each point. */ targetOptions?: SeriesBulletDataTargetOptions; /** * (Highcharts, Highstock) The x value of the point. For datetime axes, the * X value is the timestamp in milliseconds since 1970. */ x?: number; /** * (Highcharts, Highstock) The y value of the point. */ y?: (number|null); } /** * (Highcharts) Individual target options for each point. */ export interface SeriesBulletDataTargetOptions { /** * (Highcharts) The border color of the rectangle representing the target. * When not set, the point's border color is used. * * In styled mode, use class `highcharts-bullet-target` instead. */ borderColor?: ColorString; /** * (Highcharts) The border width of the rectangle representing the target. * * In styled mode, use class `highcharts-bullet-target` instead. */ borderWidth?: number; /** * (Highcharts) The color of the rectangle representing the target. When not * set, point's color (if set in point's options - `color`) or zone of the * target value (if `zones` or `negativeColor` are set) or the same color as * the point has is used. * * In styled mode, use class `highcharts-bullet-target` instead. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The height of the rectangle representing the target. */ height?: number; /** * (Highcharts) The width of the rectangle representing the target. Could be * set as a pixel value or as a percentage of a column width. */ width?: (number|string); } /** * (Highcharts) A `bullet` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `bullet` series are defined in plotOptions.bullet. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesBulletOptions extends PlotBulletOptions, SeriesOptions { /** * (Highcharts) An array of data points for the series. For the `bullet` * series type, points can be given in the following ways: * * 1. An array of arrays with 3 or 2 values. In this case, the values * correspond to `x,y,target`. If the first value is a string, it is applied * as the name of the point, and the `x` value is inferred. The `x` value * can also be omitted, in which case the inner arrays should be of length * 2\. Then the `x` value is automatically calculated, either starting at 0 * and incremented by 1, or from `pointStart` and `pointInterval` given in * the series options.(see online documentation for example) * * 2. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) */ data?: Array<([(number|string), number]|[(number|string), number, number]|SeriesBulletDataOptions)>; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "bullet"; } export interface SeriesCandlestickDataAccessibilityOptions { /** * (Highstock) Provide a description of the data point, announced to screen * readers. */ description?: string; } /** * (Highstock) Options for the drag handles. */ export interface SeriesCandlestickDataDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface SeriesCandlestickDataDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface SeriesCandlestickDataDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: SeriesCandlestickDataDragDropGuideBoxDefaultOptions; } /** * (Highstock) Point specific options for the draggable-points module. Overrides * options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesCandlestickDataDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: SeriesCandlestickDataDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (SeriesCandlestickDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesCandlestickDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) An array of data points for the series. For the `candlestick` * series type, points can be given in the following ways: * * 1. An array of arrays with 5 or 4 values. In this case, the values correspond * to `x,open,high,low,close`. If the first value is a string, it is applied as * the name of the point, and the `x` value is inferred. The `x` value can also * be omitted, in which case the inner arrays should be of length 4. Then the * `x` value is automatically calculated, either starting at 0 and incremented * by 1, or from `pointStart` and `pointInterval` given in the series * options.(see online documentation for example) * * 2. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesCandlestickDataOptions { [key: string]: any; accessibility?: SeriesCandlestickDataAccessibilityOptions; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highstock) The closing value of each data point. */ close?: number; /** * (Highcharts, Highstock, Gantt) Individual color for the point. By default * the color is pulled from the global `colors` array. * * In styled mode, the `color` option doesn't take effect. Instead, use * `colorIndex`. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) A description of the point to add to the screen reader * information about the point. Requires the Accessibility module. */ description?: string; /** * (Highstock) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesCandlestickDataDragDropOptions; /** * (Highcharts) The `id` of a series in the drilldown.series array to use * for a drilldown for this point. */ drilldown?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesCandlestickDataEventsOptions; /** * (Highcharts, Highstock) The high or maximum value for each data point. */ high?: number; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highstock) The rank for this point's data label in case of collision. If * two data labels are about to overlap, only the one with the highest * `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts, Highstock) The low or minimum value for each data point. */ low?: number; /** * (Highstock) The name of the point as shown in the legend, tooltip, * dataLabels etc. */ name?: string; /** * (Highstock) The opening value of each data point. */ open?: number; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts, Highstock) The x value of the point. For datetime axes, the * X value is the timestamp in milliseconds since 1970. */ x?: number; } /** * (Highstock) A `candlestick` series. If the type option is not specified, it * is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `candlestick` series are defined in * plotOptions.candlestick. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesCandlestickOptions extends PlotCandlestickOptions, SeriesOptions { /** * (Highstock) An array of data points for the series. For the `candlestick` * series type, points can be given in the following ways: * * 1. An array of arrays with 5 or 4 values. In this case, the values * correspond to `x,open,high,low,close`. If the first value is a string, it * is applied as the name of the point, and the `x` value is inferred. The * `x` value can also be omitted, in which case the inner arrays should be * of length 4. Then the `x` value is automatically calculated, either * starting at 0 and incremented by 1, or from `pointStart` and * `pointInterval` given in the series options.(see online documentation for * example) * * 2. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) */ data?: Array<([(number|string), number, number, number]|[(number|string), number, number, number, number]|SeriesCandlestickDataOptions)>; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "candlestick"; } /** * (Highstock) A `CCI` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `cci` series are defined in plotOptions.cci. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesCciOptions extends PlotCciOptions, SeriesOptions { /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "cci"; } /** * (Highstock) A `Chaikin Oscillator` series. If the type option is not * specified, it is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `chaikin` series are defined in plotOptions.chaikin. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesChaikinOptions extends PlotChaikinOptions, SeriesOptions { /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "chaikin"; } /** * Event information regarding check of a series box. */ export interface SeriesCheckboxClickEventObject { /** * Whether the box has been checked. */ checked: boolean; /** * Related series. */ item: Series; /** * Related series. */ target: Series; /** * Event type. */ type: "checkboxClick"; } /** * Common information for a click event on a series. */ export interface SeriesClickEventObject extends Event { /** * Nearest point on the graph. */ point: Point; } /** * (Highstock) A `CMF` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `cmf` series are defined in plotOptions.cmf. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesCmfOptions extends PlotCmfOptions, SeriesOptions { /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "cmf"; } export interface SeriesColumnDataAccessibilityOptions { /** * (Highcharts, Highstock) Provide a description of the data point, * announced to screen readers. */ description?: string; } /** * (Highcharts, Highstock) Options for the drag handles. */ export interface SeriesColumnDataDragDropDragHandleOptions { /** * (Highcharts, Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts, Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The mouse cursor to use for the drag handles. By * default this is intelligently switching between `ew-resize` and * `ns-resize` depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts, Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts, Highstock) Function to define the SVG path to use for the * drag handles. Takes the point as argument. Should return an SVG path in * array format. The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts, Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box default state. */ export interface SeriesColumnDataDragDropGuideBoxDefaultOptions { /** * (Highcharts, Highstock) CSS class name of the guide box in this state. * Defaults to `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts, Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Guide box cursor. */ cursor?: string; /** * (Highcharts, Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts, Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts, Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box. The guide box has * one state by default, the `default` state. */ export interface SeriesColumnDataDragDropGuideBoxOptions { /** * (Highcharts, Highstock) Style options for the guide box default state. */ default?: SeriesColumnDataDragDropGuideBoxDefaultOptions; } /** * (Highcharts, Highstock) Point specific options for the draggable-points * module. Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesColumnDataDragDropOptions { /** * (Highcharts, Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts, Highstock) Enable dragging in the Y dimension. Note that * this is not supported for TreeGrid axes (the default axis type in Gantt * charts). */ draggableY?: boolean; /** * (Highcharts, Highstock) Options for the drag handles. */ dragHandle?: SeriesColumnDataDragDropDragHandleOptions; /** * (Highcharts, Highstock) Set the maximum X value the points can be moved * to. */ dragMaxX?: number; /** * (Highcharts, Highstock) Set the maximum Y value the points can be moved * to. */ dragMaxY?: number; /** * (Highcharts, Highstock) Set the minimum X value the points can be moved * to. */ dragMinX?: number; /** * (Highcharts, Highstock) Set the minimum Y value the points can be moved * to. */ dragMinY?: number; /** * (Highcharts, Highstock) The X precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionX?: number; /** * (Highcharts, Highstock) The Y precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionY?: number; /** * (Highcharts, Highstock) The amount of pixels to drag the pointer before * it counts as a drag operation. This prevents drag/drop to fire when just * clicking or selecting points. */ dragSensitivity?: number; /** * (Highcharts, Highstock) Group the points by a property. Points with the * same property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts, Highstock) Style options for the guide box. The guide box * has one state by default, the `default` state. */ guideBox?: (SeriesColumnDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts, Highstock) Update points as they are dragged. If false, a * guide box is drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesColumnDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts, Highstock) An array of data points for the series. For the * `column` series type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will be * interpreted as `y` options. The `x` values will be automatically calculated, * either starting at 0 and incremented by 1, or from `pointStart` and * `pointInterval` given in the series options. If the axis has categories, * these will be used. Example:(see online documentation for example) * * 2. An array of arrays with 2 values. In this case, the values correspond to * `x,y`. If the first value is a string, it is applied as the name of the * point, and the `x` value is inferred.(see online documentation for example) * * 3. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesColumnDataOptions { [key: string]: any; accessibility?: SeriesColumnDataAccessibilityOptions; /** * (Highcharts, Highstock) The color of the border surrounding the column or * bar. * * In styled mode, the border stroke can be set with the `.highcharts-point` * rule. */ borderColor?: ColorString; /** * (Highcharts, Highstock) The width of the border surrounding the column or * bar. * * In styled mode, the stroke width can be set with the `.highcharts-point` * rule. */ borderWidth?: number; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highstock, Gantt) Individual color for the point. By default * the color is pulled from the global `colors` array. * * In styled mode, the `color` option doesn't take effect. Instead, use * `colorIndex`. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts, Highstock) A description of the point to add to the screen * reader information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts, Highstock) Point specific options for the draggable-points * module. Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesColumnDataDragDropOptions; /** * (Highcharts) The `id` of a series in the drilldown.series array to use * for a drilldown for this point. */ drilldown?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesColumnDataEventsOptions; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts, Highstock) The rank for this point's data label in case of * collision. If two data labels are about to overlap, only the one with the * highest `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts, Highstock) The name of the point as shown in the legend, * tooltip, dataLabels etc. */ name?: string; /** * (Highcharts, Highstock, Gantt) A pixel value specifying a fixed width for * the column or bar. Overrides pointWidth on the series. */ pointWidth?: number; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts, Highstock) The x value of the point. For datetime axes, the * X value is the timestamp in milliseconds since 1970. */ x?: number; /** * (Highcharts, Highstock) The y value of the point. */ y?: (number|null); } /** * (Highcharts, Highstock) A `column` series. If the type option is not * specified, it is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `column` series are defined in plotOptions.column. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesColumnOptions extends PlotColumnOptions, SeriesOptions { /** * (Highcharts, Highstock) An array of data points for the series. For the * `column` series type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will * be interpreted as `y` options. The `x` values will be automatically * calculated, either starting at 0 and incremented by 1, or from * `pointStart` and `pointInterval` given in the series options. If the axis * has categories, these will be used. Example:(see online documentation for * example) * * 2. An array of arrays with 2 values. In this case, the values correspond * to `x,y`. If the first value is a string, it is applied as the name of * the point, and the `x` value is inferred.(see online documentation for * example) * * 3. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) */ data?: Array<(number|[(number|string), (number|null)]|null|SeriesColumnDataOptions)>; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "column"; } export interface SeriesColumnpyramidDataAccessibilityOptions { /** * (Highcharts, Highstock) Provide a description of the data point, * announced to screen readers. */ description?: string; } /** * (Highcharts, Highstock) Options for the drag handles. */ export interface SeriesColumnpyramidDataDragDropDragHandleOptions { /** * (Highcharts, Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts, Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The mouse cursor to use for the drag handles. By * default this is intelligently switching between `ew-resize` and * `ns-resize` depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts, Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts, Highstock) Function to define the SVG path to use for the * drag handles. Takes the point as argument. Should return an SVG path in * array format. The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts, Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box default state. */ export interface SeriesColumnpyramidDataDragDropGuideBoxDefaultOptions { /** * (Highcharts, Highstock) CSS class name of the guide box in this state. * Defaults to `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts, Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Guide box cursor. */ cursor?: string; /** * (Highcharts, Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts, Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts, Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box. The guide box has * one state by default, the `default` state. */ export interface SeriesColumnpyramidDataDragDropGuideBoxOptions { /** * (Highcharts, Highstock) Style options for the guide box default state. */ default?: SeriesColumnpyramidDataDragDropGuideBoxDefaultOptions; } /** * (Highcharts, Highstock) Point specific options for the draggable-points * module. Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesColumnpyramidDataDragDropOptions { /** * (Highcharts, Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts, Highstock) Enable dragging in the Y dimension. Note that * this is not supported for TreeGrid axes (the default axis type in Gantt * charts). */ draggableY?: boolean; /** * (Highcharts, Highstock) Options for the drag handles. */ dragHandle?: SeriesColumnpyramidDataDragDropDragHandleOptions; /** * (Highcharts, Highstock) Set the maximum X value the points can be moved * to. */ dragMaxX?: number; /** * (Highcharts, Highstock) Set the maximum Y value the points can be moved * to. */ dragMaxY?: number; /** * (Highcharts, Highstock) Set the minimum X value the points can be moved * to. */ dragMinX?: number; /** * (Highcharts, Highstock) Set the minimum Y value the points can be moved * to. */ dragMinY?: number; /** * (Highcharts, Highstock) The X precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionX?: number; /** * (Highcharts, Highstock) The Y precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionY?: number; /** * (Highcharts, Highstock) The amount of pixels to drag the pointer before * it counts as a drag operation. This prevents drag/drop to fire when just * clicking or selecting points. */ dragSensitivity?: number; /** * (Highcharts, Highstock) Group the points by a property. Points with the * same property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts, Highstock) Style options for the guide box. The guide box * has one state by default, the `default` state. */ guideBox?: (SeriesColumnpyramidDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts, Highstock) Update points as they are dragged. If false, a * guide box is drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesColumnpyramidDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts, Highstock) An array of data points for the series. For the * `columnpyramid` series type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will be * interpreted as `y` options. The `x` values will be automatically calculated, * either starting at 0 and incremented by 1, or from `pointStart` and * `pointInterval` given in the series options. If the axis has categories, * these will be used. Example:(see online documentation for example) * * 2. An array of arrays with 2 values. In this case, the values correspond to * `x,y`. If the first value is a string, it is applied as the name of the * point, and the `x` value is inferred.(see online documentation for example) * * 3. An array of objects with named values. The objects are point configuration * objects as seen below. If the total number of data points exceeds the series' * turboThreshold, this option is not available.(see online documentation for * example) */ export interface SeriesColumnpyramidDataOptions { [key: string]: any; accessibility?: SeriesColumnpyramidDataAccessibilityOptions; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highstock, Gantt) Individual color for the point. By default * the color is pulled from the global `colors` array. * * In styled mode, the `color` option doesn't take effect. Instead, use * `colorIndex`. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts, Highstock) A description of the point to add to the screen * reader information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts, Highstock) Point specific options for the draggable-points * module. Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesColumnpyramidDataDragDropOptions; /** * (Highcharts) The `id` of a series in the drilldown.series array to use * for a drilldown for this point. */ drilldown?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesColumnpyramidDataEventsOptions; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts, Highstock) The rank for this point's data label in case of * collision. If two data labels are about to overlap, only the one with the * highest `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts, Highstock) The name of the point as shown in the legend, * tooltip, dataLabels etc. */ name?: string; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts, Highstock) The x value of the point. For datetime axes, the * X value is the timestamp in milliseconds since 1970. */ x?: number; /** * (Highcharts, Highstock) The y value of the point. */ y?: (number|null); } /** * (Highcharts, Highstock) A `columnpyramid` series. If the type option is not * specified, it is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `columnpyramid` series are defined in * plotOptions.columnpyramid. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesColumnpyramidOptions extends PlotColumnpyramidOptions, SeriesOptions { /** * (Highcharts, Highstock) An array of data points for the series. For the * `columnpyramid` series type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will * be interpreted as `y` options. The `x` values will be automatically * calculated, either starting at 0 and incremented by 1, or from * `pointStart` and `pointInterval` given in the series options. If the axis * has categories, these will be used. Example:(see online documentation for * example) * * 2. An array of arrays with 2 values. In this case, the values correspond * to `x,y`. If the first value is a string, it is applied as the name of * the point, and the `x` value is inferred.(see online documentation for * example) * * 3. An array of objects with named values. The objects are point * configuration objects as seen below. If the total number of data points * exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ data?: Array<(number|[(number|string), (number|null)]|null|SeriesColumnpyramidDataOptions)>; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "columnpyramid"; } export interface SeriesColumnrangeDataAccessibilityOptions { /** * (Highcharts, Highstock) Provide a description of the data point, * announced to screen readers. */ description?: string; } /** * (Highcharts, Highstock) Options for the drag handles. */ export interface SeriesColumnrangeDataDragDropDragHandleOptions { /** * (Highcharts, Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts, Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The mouse cursor to use for the drag handles. By * default this is intelligently switching between `ew-resize` and * `ns-resize` depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts, Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts, Highstock) Function to define the SVG path to use for the * drag handles. Takes the point as argument. Should return an SVG path in * array format. The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts, Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box default state. */ export interface SeriesColumnrangeDataDragDropGuideBoxDefaultOptions { /** * (Highcharts, Highstock) CSS class name of the guide box in this state. * Defaults to `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts, Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Guide box cursor. */ cursor?: string; /** * (Highcharts, Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts, Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts, Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box. The guide box has * one state by default, the `default` state. */ export interface SeriesColumnrangeDataDragDropGuideBoxOptions { /** * (Highcharts, Highstock) Style options for the guide box default state. */ default?: SeriesColumnrangeDataDragDropGuideBoxDefaultOptions; } /** * (Highcharts, Highstock) Point specific options for the draggable-points * module. Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesColumnrangeDataDragDropOptions { /** * (Highcharts, Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts, Highstock) Enable dragging in the Y dimension. Note that * this is not supported for TreeGrid axes (the default axis type in Gantt * charts). */ draggableY?: boolean; /** * (Highcharts, Highstock) Options for the drag handles. */ dragHandle?: SeriesColumnrangeDataDragDropDragHandleOptions; /** * (Highcharts, Highstock) Set the maximum X value the points can be moved * to. */ dragMaxX?: number; /** * (Highcharts, Highstock) Set the maximum Y value the points can be moved * to. */ dragMaxY?: number; /** * (Highcharts, Highstock) Set the minimum X value the points can be moved * to. */ dragMinX?: number; /** * (Highcharts, Highstock) Set the minimum Y value the points can be moved * to. */ dragMinY?: number; /** * (Highcharts, Highstock) The X precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionX?: number; /** * (Highcharts, Highstock) The Y precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionY?: number; /** * (Highcharts, Highstock) The amount of pixels to drag the pointer before * it counts as a drag operation. This prevents drag/drop to fire when just * clicking or selecting points. */ dragSensitivity?: number; /** * (Highcharts, Highstock) Group the points by a property. Points with the * same property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts, Highstock) Style options for the guide box. The guide box * has one state by default, the `default` state. */ guideBox?: (SeriesColumnrangeDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts, Highstock) Update points as they are dragged. If false, a * guide box is drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesColumnrangeDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts, Highstock) An array of data points for the series. For the * `columnrange` series type, points can be given in the following ways: * * 1. An array of arrays with 3 or 2 values. In this case, the values correspond * to `x,low,high`. If the first value is a string, it is applied as the name of * the point, and the `x` value is inferred. The `x` value can also be omitted, * in which case the inner arrays should be of length 2\. Then the `x` value is * automatically calculated, either starting at 0 and incremented by 1, or from * `pointStart` and `pointInterval` given in the series options.(see online * documentation for example) * * 2. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesColumnrangeDataOptions { [key: string]: any; accessibility?: SeriesColumnrangeDataAccessibilityOptions; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highstock, Gantt) Individual color for the point. By default * the color is pulled from the global `colors` array. * * In styled mode, the `color` option doesn't take effect. Instead, use * `colorIndex`. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts, Highstock) A description of the point to add to the screen * reader information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts, Highstock) Point specific options for the draggable-points * module. Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesColumnrangeDataDragDropOptions; /** * (Highcharts) The `id` of a series in the drilldown.series array to use * for a drilldown for this point. */ drilldown?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesColumnrangeDataEventsOptions; /** * (Highcharts, Highstock) The high or maximum value for each data point. */ high?: number; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts, Highstock) The rank for this point's data label in case of * collision. If two data labels are about to overlap, only the one with the * highest `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts, Highstock) The low or minimum value for each data point. */ low?: number; /** * (Highcharts, Highstock) The name of the point as shown in the legend, * tooltip, dataLabels etc. */ name?: string; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts, Highstock) The x value of the point. For datetime axes, the * X value is the timestamp in milliseconds since 1970. */ x?: number; } /** * (Highcharts, Highstock) A `columnrange` series. If the type option is not * specified, it is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `columnrange` series are defined in * plotOptions.columnrange. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesColumnrangeOptions extends PlotColumnrangeOptions, SeriesOptions { /** * (Highcharts, Highstock) An array of data points for the series. For the * `columnrange` series type, points can be given in the following ways: * * 1. An array of arrays with 3 or 2 values. In this case, the values * correspond to `x,low,high`. If the first value is a string, it is applied * as the name of the point, and the `x` value is inferred. The `x` value * can also be omitted, in which case the inner arrays should be of length * 2\. Then the `x` value is automatically calculated, either starting at 0 * and incremented by 1, or from `pointStart` and `pointInterval` given in * the series options.(see online documentation for example) * * 2. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) */ data?: Array<([(number|string), number]|[(number|string), number, number]|SeriesColumnrangeDataOptions)>; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * Not available */ stack?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "columnrange"; } export interface SeriesCylinderDataAccessibilityOptions { /** * (Highcharts, Highstock) Provide a description of the data point, * announced to screen readers. */ description?: string; } /** * (Highcharts, Highstock) Options for the drag handles. */ export interface SeriesCylinderDataDragDropDragHandleOptions { /** * (Highcharts, Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts, Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The mouse cursor to use for the drag handles. By * default this is intelligently switching between `ew-resize` and * `ns-resize` depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts, Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts, Highstock) Function to define the SVG path to use for the * drag handles. Takes the point as argument. Should return an SVG path in * array format. The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts, Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box default state. */ export interface SeriesCylinderDataDragDropGuideBoxDefaultOptions { /** * (Highcharts, Highstock) CSS class name of the guide box in this state. * Defaults to `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts, Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Guide box cursor. */ cursor?: string; /** * (Highcharts, Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts, Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts, Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box. The guide box has * one state by default, the `default` state. */ export interface SeriesCylinderDataDragDropGuideBoxOptions { /** * (Highcharts, Highstock) Style options for the guide box default state. */ default?: SeriesCylinderDataDragDropGuideBoxDefaultOptions; } /** * (Highcharts, Highstock) Point specific options for the draggable-points * module. Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesCylinderDataDragDropOptions { /** * (Highcharts, Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts, Highstock) Enable dragging in the Y dimension. Note that * this is not supported for TreeGrid axes (the default axis type in Gantt * charts). */ draggableY?: boolean; /** * (Highcharts, Highstock) Options for the drag handles. */ dragHandle?: SeriesCylinderDataDragDropDragHandleOptions; /** * (Highcharts, Highstock) Set the maximum X value the points can be moved * to. */ dragMaxX?: number; /** * (Highcharts, Highstock) Set the maximum Y value the points can be moved * to. */ dragMaxY?: number; /** * (Highcharts, Highstock) Set the minimum X value the points can be moved * to. */ dragMinX?: number; /** * (Highcharts, Highstock) Set the minimum Y value the points can be moved * to. */ dragMinY?: number; /** * (Highcharts, Highstock) The X precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionX?: number; /** * (Highcharts, Highstock) The Y precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionY?: number; /** * (Highcharts, Highstock) The amount of pixels to drag the pointer before * it counts as a drag operation. This prevents drag/drop to fire when just * clicking or selecting points. */ dragSensitivity?: number; /** * (Highcharts, Highstock) Group the points by a property. Points with the * same property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts, Highstock) Style options for the guide box. The guide box * has one state by default, the `default` state. */ guideBox?: (SeriesCylinderDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts, Highstock) Update points as they are dragged. If false, a * guide box is drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesCylinderDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts, Highstock) An array of data points for the series. For the * `cylinder` series type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will be * interpreted as `y` options. The `x` values will be automatically calculated, * either starting at 0 and incremented by 1, or from `pointStart` and * `pointInterval` given in the series options. If the axis has categories, * these will be used. Example:(see online documentation for example) * * 2. An array of arrays with 2 values. In this case, the values correspond to * `x,y`. If the first value is a string, it is applied as the name of the * point, and the `x` value is inferred.(see online documentation for example) * * 3. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesCylinderDataOptions { [key: string]: any; accessibility?: SeriesCylinderDataAccessibilityOptions; /** * (Highcharts, Highstock) The color of the border surrounding the column or * bar. * * In styled mode, the border stroke can be set with the `.highcharts-point` * rule. */ borderColor?: ColorString; /** * (Highcharts, Highstock) The width of the border surrounding the column or * bar. * * In styled mode, the stroke width can be set with the `.highcharts-point` * rule. */ borderWidth?: number; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highstock, Gantt) Individual color for the point. By default * the color is pulled from the global `colors` array. * * In styled mode, the `color` option doesn't take effect. Instead, use * `colorIndex`. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts, Highstock) A description of the point to add to the screen * reader information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts, Highstock) Point specific options for the draggable-points * module. Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesCylinderDataDragDropOptions; /** * (Highcharts) The `id` of a series in the drilldown.series array to use * for a drilldown for this point. */ drilldown?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesCylinderDataEventsOptions; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts, Highstock) The rank for this point's data label in case of * collision. If two data labels are about to overlap, only the one with the * highest `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts, Highstock) The name of the point as shown in the legend, * tooltip, dataLabels etc. */ name?: string; /** * (Highcharts, Highstock, Gantt) A pixel value specifying a fixed width for * the column or bar. Overrides pointWidth on the series. */ pointWidth?: number; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts, Highstock) The x value of the point. For datetime axes, the * X value is the timestamp in milliseconds since 1970. */ x?: number; /** * (Highcharts, Highstock) The y value of the point. */ y?: (number|null); } /** * (Highcharts) A `cylinder` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `cylinder` series are defined in plotOptions.cylinder. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesCylinderOptions extends PlotCylinderOptions, SeriesOptions { /** * (Highcharts, Highstock) An array of data points for the series. For the * `cylinder` series type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will * be interpreted as `y` options. The `x` values will be automatically * calculated, either starting at 0 and incremented by 1, or from * `pointStart` and `pointInterval` given in the series options. If the axis * has categories, these will be used. Example:(see online documentation for * example) * * 2. An array of arrays with 2 values. In this case, the values correspond * to `x,y`. If the first value is a string, it is applied as the name of * the point, and the `x` value is inferred.(see online documentation for * example) * * 3. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) */ data?: Array<(number|[(number|string), (number|null)]|null|SeriesCylinderDataOptions)>; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "cylinder"; } /** * (Highstock) A `DEMA` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `dema` series are defined in plotOptions.dema. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesDemaOptions extends PlotDemaOptions, SeriesOptions { /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "dema"; } export interface SeriesDependencywheelDataAccessibilityOptions { /** * (Highcharts) Provide a description of the data point, announced to screen * readers. */ description?: string; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesDependencywheelDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) An array of data points for the series. For the * `dependencywheel` series type, points can be given in the following way: * * An array of objects with named values. The following snippet shows only a few * settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesDependencywheelDataOptions { [key: string]: any; accessibility?: SeriesDependencywheelDataAccessibilityOptions; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts) The color for the individual _link_. By default, the link * color is the same as the node it extends from. The `series.fillOpacity` * option also applies to the points, so when setting a specific link color, * consider setting the `fillOpacity` to 1. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) A description of the point to add to the screen reader * information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesDependencywheelDataEventsOptions; /** * (Highcharts) The node that the link runs from. */ from?: string; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts) The rank for this point's data label in case of collision. * If two data labels are about to overlap, only the one with the highest * `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts) The name of the point as shown in the legend, tooltip, * dataLabels etc. */ name?: string; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts) The node that the link runs to. */ to?: string; /** * (Highcharts) The weight of the link. */ weight?: (number|null); } /** * (Highcharts) A collection of options for the individual nodes. The nodes in a * dependency diagram are auto-generated instances of `Highcharts.Point`, but * options can be applied here and linked by the `id`. */ export interface SeriesDependencywheelNodesOptions { /** * (Highcharts) The color of the auto generated node. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The color index of the auto generated node, especially for * use in styled mode. */ colorIndex?: number; /** * (Highcharts) An optional column index of where to place the node. The * default behaviour is to place it next to the preceding node. Note that * this option name is counter intuitive in inverted charts, like for * example an organization chart rendered top down. In this case the * "columns" are horizontal. */ column?: number; /** * (Highcharts) The id of the auto-generated node, refering to the `from` or * `to` setting of the link. */ id?: string; /** * (Highcharts) An optional level index of where to place the node. The * default behaviour is to place it next to the preceding node. Alias of * `nodes.column`, but in inverted sankeys and org charts, the levels are * laid out as rows. */ level?: number; /** * (Highcharts) The name to display for the node in data labels and * tooltips. Use this when the name is different from the `id`. Where the id * must be unique for each node, this is not necessary for the name. */ name?: string; } /** * (Highcharts) A `dependencywheel` series. If the type option is not specified, * it is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `dependencywheel` series are defined in * plotOptions.dependencywheel. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesDependencywheelOptions extends PlotDependencywheelOptions, SeriesOptions { /** * Not available */ borderRadius?: undefined; /** * Not available */ crisp?: undefined; /** * (Highcharts) An array of data points for the series. For the * `dependencywheel` series type, points can be given in the following way: * * An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of * data points exceeds the series' turboThreshold, this option is not * available.(see online documentation for example) */ data?: Array<SeriesDependencywheelDataOptions>; /** * Not available */ depth?: undefined; /** * Not available */ edgeColor?: undefined; /** * Not available */ edgeWidth?: undefined; /** * Not available */ grouping?: undefined; /** * Not available */ groupPadding?: undefined; /** * Not available */ groupZPadding?: undefined; /** * Not available */ maxPointWidth?: undefined; /** * (Highcharts) A collection of options for the individual nodes. The nodes * in a dependency diagram are auto-generated instances of * `Highcharts.Point`, but options can be applied here and linked by the * `id`. */ nodes?: Array<SeriesDependencywheelNodesOptions>; /** * Not available */ pointPadding?: undefined; /** * Not available */ pointWidth?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "dependencywheel"; } /** * (Highstock) A Detrended Price Oscillator. If the type option is not * specified, it is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `dpo` series are defined in plotOptions.dpo. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesDpoOptions extends PlotDpoOptions, SeriesOptions { /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "dpo"; } /** * (Highstock) A `EMA` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `ema` series are defined in plotOptions.ema. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesEmaOptions extends PlotEmaOptions, SeriesOptions { /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "ema"; } export interface SeriesErrorbarDataAccessibilityOptions { /** * (Highcharts) Provide a description of the data point, announced to screen * readers. */ description?: string; } /** * (Highcharts) Options for the drag handles. */ export interface SeriesErrorbarDataDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface SeriesErrorbarDataDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface SeriesErrorbarDataDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: SeriesErrorbarDataDragDropGuideBoxDefaultOptions; } /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesErrorbarDataDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: SeriesErrorbarDataDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (SeriesErrorbarDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesErrorbarDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) An array of data points for the series. For the `errorbar` * series type, points can be given in the following ways: * * 1. An array of arrays with 3 or 2 values. In this case, the values correspond * to `x,low,high`. If the first value is a string, it is applied as the name of * the point, and the `x` value is inferred. The `x` value can also be omitted, * in which case the inner arrays should be of length 2\. Then the `x` value is * automatically calculated, either starting at 0 and incremented by 1, or from * `pointStart` and `pointInterval` given in the series options.(see online * documentation for example) * * 2. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesErrorbarDataOptions { [key: string]: any; accessibility?: SeriesErrorbarDataAccessibilityOptions; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highstock, Gantt) Individual color for the point. By default * the color is pulled from the global `colors` array. * * In styled mode, the `color` option doesn't take effect. Instead, use * `colorIndex`. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts) A description of the point to add to the screen reader * information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesErrorbarDataDragDropOptions; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesErrorbarDataEventsOptions; /** * (Highcharts, Highstock) The high or maximum value for each data point. */ high?: number; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts) The rank for this point's data label in case of collision. * If two data labels are about to overlap, only the one with the highest * `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts, Highstock) The low or minimum value for each data point. */ low?: number; /** * (Highcharts) The name of the point as shown in the legend, tooltip, * dataLabels etc. */ name?: string; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts, Highstock) The x value of the point. For datetime axes, the * X value is the timestamp in milliseconds since 1970. */ x?: number; } /** * (Highcharts) A `errorbar` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `errorbar` series are defined in plotOptions.errorbar. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesErrorbarOptions extends PlotErrorbarOptions, SeriesOptions { /** * (Highcharts) An array of data points for the series. For the `errorbar` * series type, points can be given in the following ways: * * 1. An array of arrays with 3 or 2 values. In this case, the values * correspond to `x,low,high`. If the first value is a string, it is applied * as the name of the point, and the `x` value is inferred. The `x` value * can also be omitted, in which case the inner arrays should be of length * 2\. Then the `x` value is automatically calculated, either starting at 0 * and incremented by 1, or from `pointStart` and `pointInterval` given in * the series options.(see online documentation for example) * * 2. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) */ data?: Array<([(number|string), number]|[(number|string), number, number]|SeriesErrorbarDataOptions)>; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * Not available */ stack?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "errorbar"; } export interface SeriesFlagsDataAccessibilityOptions { /** * (Highstock) Provide a description of the data point, announced to screen * readers. */ description?: string; } /** * (Highstock) Options for the drag handles. */ export interface SeriesFlagsDataDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface SeriesFlagsDataDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface SeriesFlagsDataDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: SeriesFlagsDataDragDropGuideBoxDefaultOptions; } /** * (Highstock) Point specific options for the draggable-points module. Overrides * options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesFlagsDataDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: SeriesFlagsDataDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (SeriesFlagsDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesFlagsDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) An array of data points for the series. For the `flags` series * type, points can be given in the following ways: * * 1. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesFlagsDataOptions { [key: string]: any; accessibility?: SeriesFlagsDataAccessibilityOptions; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highstock, Gantt) Individual color for the point. By default * the color is pulled from the global `colors` array. * * In styled mode, the `color` option doesn't take effect. Instead, use * `colorIndex`. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highstock) A description of the point to add to the screen reader * information about the point. Requires the Accessibility module. */ description?: string; /** * (Highstock) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesFlagsDataDragDropOptions; /** * (Highcharts) The `id` of a series in the drilldown.series array to use * for a drilldown for this point. */ drilldown?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesFlagsDataEventsOptions; /** * (Highstock) The fill color of an individual flag. By default it inherits * from the series color. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highstock) The rank for this point's data label in case of collision. If * two data labels are about to overlap, only the one with the highest * `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highstock) The longer text to be shown in the flag's tooltip. */ text?: string; /** * (Highstock) The short text to be shown on the flag. */ title?: string; /** * (Highcharts, Highstock) The x value of the point. For datetime axes, the * X value is the timestamp in milliseconds since 1970. */ x?: number; } /** * (Highstock) A `flags` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `flags` series are defined in plotOptions.flags. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesFlagsOptions extends PlotFlagsOptions, SeriesOptions { /** * (Highstock) An array of data points for the series. For the `flags` * series type, points can be given in the following ways: * * 1. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) */ data?: Array<SeriesFlagsDataOptions>; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "flags"; } /** * (Highcharts) An array of data points for the series. For the `funnel3d` * series type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will be * interpreted as `y` options. The `x` values will be automatically calculated, * either starting at 0 and incremented by 1, or from `pointStart` and * `pointInterval` given in the series options. If the axis has categories, * these will be used. Example:(see online documentation for example) * * 2. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesFunnel3dDataOptions { [key: string]: any; /** * (Highcharts) By deafult sides fill is set to a gradient through this * option being set to `true`. Set to `false` to get solid color for the * sides. */ gradientForSides?: (boolean|undefined); } /** * (Highcharts) A `funnel3d` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `funnel3d` series are defined in plotOptions.funnel3d. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesFunnel3dOptions extends PlotFunnel3dOptions, SeriesOptions { /** * (Highcharts) An array of data points for the series. For the `funnel3d` * series type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will * be interpreted as `y` options. The `x` values will be automatically * calculated, either starting at 0 and incremented by 1, or from * `pointStart` and `pointInterval` given in the series options. If the axis * has categories, these will be used. Example:(see online documentation for * example) * * 2. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) */ data?: Array<(number|Array<number>|SeriesFunnel3dDataOptions)>; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "funnel3d"; } export interface SeriesFunnelDataAccessibilityOptions { /** * (Highcharts) Provide a description of the data point, announced to screen * readers. */ description?: string; } /** * (Highcharts) Options for the drag handles. */ export interface SeriesFunnelDataDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface SeriesFunnelDataDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface SeriesFunnelDataDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: SeriesFunnelDataDragDropGuideBoxDefaultOptions; } /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesFunnelDataDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: SeriesFunnelDataDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (SeriesFunnelDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesFunnelDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) An array of data points for the series. For the `funnel` series * type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will be * interpreted as `y` options. Example:(see online documentation for example) * * 2. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesFunnelDataOptions { [key: string]: any; accessibility?: SeriesFunnelDataAccessibilityOptions; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highstock, Gantt) Individual color for the point. By default * the color is pulled from the global `colors` array. * * In styled mode, the `color` option doesn't take effect. Instead, use * `colorIndex`. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) A description of the point to add to the screen reader * information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesFunnelDataDragDropOptions; /** * (Highcharts) The `id` of a series in the drilldown.series array to use * for a drilldown for this point. */ drilldown?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesFunnelDataEventsOptions; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts) The rank for this point's data label in case of collision. * If two data labels are about to overlap, only the one with the highest * `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts) The sequential index of the data point in the legend. */ legendIndex?: number; /** * (Highcharts) The name of the point as shown in the legend, tooltip, * dataLabels etc. */ name?: string; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts, Highstock) The y value of the point. */ y?: (number|null); } /** * (Highcharts) A `funnel` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `funnel` series are defined in plotOptions.funnel. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesFunnelOptions extends PlotFunnelOptions, SeriesOptions { /** * (Highcharts) An array of data points for the series. For the `funnel` * series type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will * be interpreted as `y` options. Example:(see online documentation for * example) * * 2. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) */ data?: Array<(number|null|SeriesFunnelDataOptions)>; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * Not available */ stack?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "funnel"; /** * Not available */ xAxis?: undefined; /** * Not available */ yAxis?: undefined; } export interface SeriesGanttDataAccessibilityOptions { /** * (Gantt) Provide a description of the data point, announced to screen * readers. */ description?: string; } /** * (Gantt) Progress indicator, how much of the task completed. If it is a * number, the `fill` will be applied automatically. */ export interface SeriesGanttDataCompletedOptions { /** * (Highcharts, Highstock, Gantt) The amount of the progress indicator, * ranging from 0 (not started) to 1 (finished). */ amount?: number; /** * (Highcharts, Highstock, Gantt) The fill of the progress indicator. * Defaults to a darkened variety of the main color. */ fill?: (ColorString|GradientColorObject|PatternObject); } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface SeriesGanttDataDependencyEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface SeriesGanttDataDependencyMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) The ID of the point (task) that this point depends on in Gantt * charts. Aliases connect. Can also be an object, specifying further connecting * options between the points. Multiple connections can be specified by * providing an array. */ export interface SeriesGanttDataDependencyOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: SeriesGanttDataDependencyEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: SeriesGanttDataDependencyMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: SeriesGanttDataDependencyStartMarkerOptions; /** * (Gantt) The ID of the point to connect to. */ to?: string; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface SeriesGanttDataDependencyStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Options for the drag handles. */ export interface SeriesGanttDataDragDropDragHandleOptions { /** * (Gantt) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Gantt) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) The mouse cursor to use for the drag handles. By default this is * intelligently switching between `ew-resize` and `ns-resize` depending on * the direction the point is being dragged. */ cursor?: string; /** * (Gantt) The line color of the drag handles. */ lineColor?: ColorString; /** * (Gantt) The line width for the drag handles. */ lineWidth?: number; /** * (Gantt) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Gantt) The z index for the drag handles. */ zIndex?: number; } /** * (Gantt) Style options for the guide box default state. */ export interface SeriesGanttDataDragDropGuideBoxDefaultOptions { /** * (Gantt) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Gantt) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Guide box cursor. */ cursor?: string; /** * (Gantt) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Gantt) Width of the line around the guide box. */ lineWidth?: number; /** * (Gantt) Guide box zIndex. */ zIndex?: number; } /** * (Gantt) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface SeriesGanttDataDragDropGuideBoxOptions { /** * (Gantt) Style options for the guide box default state. */ default?: SeriesGanttDataDragDropGuideBoxDefaultOptions; } /** * (Gantt) Point specific options for the draggable-points module. Overrides * options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesGanttDataDragDropOptions { /** * (Gantt) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Gantt) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Gantt) Options for the drag handles. */ dragHandle?: SeriesGanttDataDragDropDragHandleOptions; /** * (Gantt) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Gantt) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Gantt) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Gantt) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Gantt) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Gantt) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Gantt) The amount of pixels to drag the pointer before it counts as a * drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Gantt) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Gantt) Style options for the guide box. The guide box has one state by * default, the `default` state. */ guideBox?: (SeriesGanttDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Gantt) Update points as they are dragged. If false, a guide box is drawn * to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock) Options for the point markers of line-like series. * Properties like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't have * markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface SeriesGanttDataMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: SeriesGanttDataMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface SeriesGanttDataMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface SeriesGanttDataMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|SeriesGanttDataMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface SeriesGanttDataMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface SeriesGanttDataMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface SeriesGanttDataMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: SeriesGanttDataMarkerStatesHoverOptions; inactive?: SeriesGanttDataMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: SeriesGanttDataMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: SeriesGanttDataMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface SeriesGanttDataMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Gantt) Data for a Gantt series. */ export interface SeriesGanttDataOptions { [key: string]: any; accessibility?: SeriesGanttDataAccessibilityOptions; /** * (Gantt) Whether the grid node belonging to this point should start as * collapsed. Used in axes of type treegrid. */ collapsed?: boolean; /** * (Gantt) Progress indicator, how much of the task completed. If it is a * number, the `fill` will be applied automatically. */ completed?: (number|SeriesGanttDataCompletedOptions); /** * (Gantt) The ID of the point (task) that this point depends on in Gantt * charts. Aliases connect. Can also be an object, specifying further * connecting options between the points. Multiple connections can be * specified by providing an array. */ dependency?: (string|SeriesGanttDataDependencyOptions|Array<(string|SeriesGanttDataDependencyOptions)>); /** * (Gantt) A description of the point to add to the screen reader * information about the point. Requires the Accessibility module. */ description?: string; /** * (Gantt) Point specific options for the draggable-points module. Overrides * options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesGanttDataDragDropOptions; /** * (Highcharts) The `id` of a series in the drilldown.series array to use * for a drilldown for this point. */ drilldown?: string; /** * (Gantt) The end time of a task. */ end?: number; /** * (Gantt) The rank for this point's data label in case of collision. If two * data labels are about to overlap, only the one with the highest * `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts, Highstock) Options for the point markers of line-like * series. Properties like `fillColor`, `lineColor` and `lineWidth` define * the visual appearance of the markers. Other series types, like column * series, don't have markers, but have visual options on the series level * instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: SeriesGanttDataMarkerOptions; /** * (Gantt) Whether this point is a milestone. If so, only the `start` option * is handled, while `end` is ignored. */ milestone?: boolean; /** * (Gantt) The name of a task. If a `treegrid` y-axis is used (default in * Gantt charts), this will be picked up automatically, and used to * calculate the y-value. */ name?: string; /** * (Gantt) The ID of the parent point (task) of this point in Gantt charts. */ parent?: string; /** * (Gantt) The start time of a task. */ start?: number; /** * (Gantt) The Y value of a task. */ y?: number; } /** * (Gantt) A `gantt` series. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `gantt` series are defined in plotOptions.gantt. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesGanttOptions extends PlotGanttOptions, SeriesOptions { /** * (Gantt) Data for a Gantt series. */ data?: Array<SeriesGanttDataOptions>; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "gantt"; } export interface SeriesGaugeDataAccessibilityOptions { /** * (Highcharts) Provide a description of the data point, announced to screen * readers. */ description?: string; } /** * (Highcharts) Options for the drag handles. */ export interface SeriesGaugeDataDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface SeriesGaugeDataDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface SeriesGaugeDataDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: SeriesGaugeDataDragDropGuideBoxDefaultOptions; } /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesGaugeDataDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: SeriesGaugeDataDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (SeriesGaugeDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesGaugeDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) An array of data points for the series. For the `gauge` series * type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will be * interpreted as `y` options. Example:(see online documentation for example) * * 2. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) * * The typical gauge only contains a single data value. */ export interface SeriesGaugeDataOptions { [key: string]: any; accessibility?: SeriesGaugeDataAccessibilityOptions; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highstock, Gantt) Individual color for the point. By default * the color is pulled from the global `colors` array. * * In styled mode, the `color` option doesn't take effect. Instead, use * `colorIndex`. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) A description of the point to add to the screen reader * information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesGaugeDataDragDropOptions; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesGaugeDataEventsOptions; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts) The rank for this point's data label in case of collision. * If two data labels are about to overlap, only the one with the highest * `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts) The name of the point as shown in the legend, tooltip, * dataLabels etc. */ name?: string; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts, Highstock) The y value of the point. */ y?: (number|null); } /** * (Highcharts) A `gauge` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `gauge` series are defined in plotOptions.gauge. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesGaugeOptions extends PlotGaugeOptions, SeriesOptions { /** * (Highcharts) An array of data points for the series. For the `gauge` * series type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will * be interpreted as `y` options. Example:(see online documentation for * example) * * 2. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) * * The typical gauge only contains a single data value. */ data?: Array<(number|null|SeriesGaugeDataOptions)>; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * Not available */ stack?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "gauge"; } export interface SeriesHeatmapDataAccessibilityOptions { /** * (Highcharts, Highmaps) Provide a description of the data point, announced * to screen readers. */ description?: string; } /** * (Highcharts, Highmaps) Options for the drag handles. */ export interface SeriesHeatmapDataDragDropDragHandleOptions { /** * (Highcharts, Highmaps) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts, Highmaps) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highmaps) The mouse cursor to use for the drag handles. By * default this is intelligently switching between `ew-resize` and * `ns-resize` depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts, Highmaps) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts, Highmaps) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts, Highmaps) Function to define the SVG path to use for the * drag handles. Takes the point as argument. Should return an SVG path in * array format. The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts, Highmaps) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts, Highmaps) Style options for the guide box default state. */ export interface SeriesHeatmapDataDragDropGuideBoxDefaultOptions { /** * (Highcharts, Highmaps) CSS class name of the guide box in this state. * Defaults to `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts, Highmaps) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highmaps) Guide box cursor. */ cursor?: string; /** * (Highcharts, Highmaps) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts, Highmaps) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts, Highmaps) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts, Highmaps) Style options for the guide box. The guide box has one * state by default, the `default` state. */ export interface SeriesHeatmapDataDragDropGuideBoxOptions { /** * (Highcharts, Highmaps) Style options for the guide box default state. */ default?: SeriesHeatmapDataDragDropGuideBoxDefaultOptions; } /** * (Highcharts, Highmaps) Point specific options for the draggable-points * module. Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesHeatmapDataDragDropOptions { /** * (Highcharts, Highmaps) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts, Highmaps) Enable dragging in the Y dimension. Note that this * is not supported for TreeGrid axes (the default axis type in Gantt * charts). */ draggableY?: boolean; /** * (Highcharts, Highmaps) Options for the drag handles. */ dragHandle?: SeriesHeatmapDataDragDropDragHandleOptions; /** * (Highcharts, Highmaps) Set the maximum X value the points can be moved * to. */ dragMaxX?: number; /** * (Highcharts, Highmaps) Set the maximum Y value the points can be moved * to. */ dragMaxY?: number; /** * (Highcharts, Highmaps) Set the minimum X value the points can be moved * to. */ dragMinX?: number; /** * (Highcharts, Highmaps) Set the minimum Y value the points can be moved * to. */ dragMinY?: number; /** * (Highcharts, Highmaps) The X precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionX?: number; /** * (Highcharts, Highmaps) The Y precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionY?: number; /** * (Highcharts, Highmaps) The amount of pixels to drag the pointer before it * counts as a drag operation. This prevents drag/drop to fire when just * clicking or selecting points. */ dragSensitivity?: number; /** * (Highcharts, Highmaps) Group the points by a property. Points with the * same property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts, Highmaps) Style options for the guide box. The guide box has * one state by default, the `default` state. */ guideBox?: (SeriesHeatmapDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts, Highmaps) Update points as they are dragged. If false, a * guide box is drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesHeatmapDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts, Highmaps) An array of data points for the series. For the * `heatmap` series type, points can be given in the following ways: * * 1. An array of arrays with 3 or 2 values. In this case, the values correspond * to `x,y,value`. If the first value is a string, it is applied as the name of * the point, and the `x` value is inferred. The `x` value can also be omitted, * in which case the inner arrays should be of length 2\. Then the `x` value is * automatically calculated, either starting at 0 and incremented by 1, or from * `pointStart` and `pointInterval` given in the series options.(see online * documentation for example) * * 2. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesHeatmapDataOptions { [key: string]: any; accessibility?: SeriesHeatmapDataAccessibilityOptions; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highmaps) The color of the point. In heat maps the point * color is rarely set explicitly, as we use the color to denote the * `value`. Options for this are set in the colorAxis configuration. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts, Highmaps) A description of the point to add to the screen * reader information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts, Highmaps) Point specific options for the draggable-points * module. Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesHeatmapDataDragDropOptions; /** * (Highcharts) The `id` of a series in the drilldown.series array to use * for a drilldown for this point. */ drilldown?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesHeatmapDataEventsOptions; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts, Highmaps) The rank for this point's data label in case of * collision. If two data labels are about to overlap, only the one with the * highest `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts, Highmaps) The name of the point as shown in the legend, * tooltip, dataLabels etc. */ name?: string; /** * (Highcharts, Highmaps) Point padding for a single point. */ pointPadding?: number; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts, Highmaps) The value of the point, resulting in a color * controled by options as set in the colorAxis configuration. */ value?: number; /** * (Highcharts, Highmaps) The x value of the point. For datetime axes, the X * value is the timestamp in milliseconds since 1970. */ x?: number; /** * (Highcharts, Highmaps) The y value of the point. */ y?: number; } /** * (Highcharts, Highmaps) A `heatmap` series. If the type option is not * specified, it is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `heatmap` series are defined in plotOptions.heatmap. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesHeatmapOptions extends PlotHeatmapOptions, SeriesOptions { /** * (Highcharts, Highmaps) An array of data points for the series. For the * `heatmap` series type, points can be given in the following ways: * * 1. An array of arrays with 3 or 2 values. In this case, the values * correspond to `x,y,value`. If the first value is a string, it is applied * as the name of the point, and the `x` value is inferred. The `x` value * can also be omitted, in which case the inner arrays should be of length * 2\. Then the `x` value is automatically calculated, either starting at 0 * and incremented by 1, or from `pointStart` and `pointInterval` given in * the series options.(see online documentation for example) * * 2. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) */ data?: Array<(Array<number>|SeriesHeatmapDataOptions)>; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * Not available */ stack?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "heatmap"; } export interface SeriesHistogramDataAccessibilityOptions { /** * (Highcharts) Provide a description of the data point, announced to screen * readers. */ description?: string; } /** * (Highcharts) Options for the drag handles. */ export interface SeriesHistogramDataDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface SeriesHistogramDataDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface SeriesHistogramDataDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: SeriesHistogramDataDragDropGuideBoxDefaultOptions; } /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesHistogramDataDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: SeriesHistogramDataDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (SeriesHistogramDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesHistogramDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) An array of data points for the series. For the `histogram` * series type, points are calculated dynamically. See histogram.baseSeries. */ export interface SeriesHistogramDataOptions { [key: string]: any; accessibility?: SeriesHistogramDataAccessibilityOptions; /** * (Highcharts, Highstock) The color of the border surrounding the column or * bar. * * In styled mode, the border stroke can be set with the `.highcharts-point` * rule. */ borderColor?: ColorString; /** * (Highcharts, Highstock) The width of the border surrounding the column or * bar. * * In styled mode, the stroke width can be set with the `.highcharts-point` * rule. */ borderWidth?: number; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highstock, Gantt) Individual color for the point. By default * the color is pulled from the global `colors` array. * * In styled mode, the `color` option doesn't take effect. Instead, use * `colorIndex`. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) A description of the point to add to the screen reader * information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesHistogramDataDragDropOptions; /** * (Highcharts) The `id` of a series in the drilldown.series array to use * for a drilldown for this point. */ drilldown?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesHistogramDataEventsOptions; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts) The rank for this point's data label in case of collision. * If two data labels are about to overlap, only the one with the highest * `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts) The name of the point as shown in the legend, tooltip, * dataLabels etc. */ name?: string; /** * (Highcharts, Highstock, Gantt) A pixel value specifying a fixed width for * the column or bar. Overrides pointWidth on the series. */ pointWidth?: number; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts, Highstock) The x value of the point. For datetime axes, the * X value is the timestamp in milliseconds since 1970. */ x?: number; /** * (Highcharts, Highstock) The y value of the point. */ y?: (number|null); } /** * (Highcharts) A `histogram` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `histogram` series are defined in plotOptions.histogram. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesHistogramOptions extends PlotHistogramOptions, SeriesOptions { /** * (Highcharts) An integer identifying the index to use for the base series, * or a string representing the id of the series. */ baseSeries?: (number|string); /** * (Highcharts) An array of data points for the series. For the `histogram` * series type, points are calculated dynamically. See histogram.baseSeries. */ data?: (SeriesHistogramDataOptions|Array<(object|any[])>); /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "histogram"; } /** * (Highstock) A `IKH` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `ikh` series are defined in plotOptions.ikh. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesIkhOptions extends PlotIkhOptions, SeriesOptions { /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "ikh"; } export interface SeriesItemDataAccessibilityOptions { /** * (Highcharts) Provide a description of the data point, announced to screen * readers. */ description?: string; } /** * (Highcharts) Options for the drag handles. */ export interface SeriesItemDataDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface SeriesItemDataDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface SeriesItemDataDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: SeriesItemDataDragDropGuideBoxDefaultOptions; } /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesItemDataDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: SeriesItemDataDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (SeriesItemDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesItemDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) An array of data points for the series. For the `item` series * type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will be * interpreted as `y` options. Example:(see online documentation for example) * * 2. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesItemDataOptions { [key: string]: any; accessibility?: SeriesItemDataAccessibilityOptions; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highstock, Gantt) Individual color for the point. By default * the color is pulled from the global `colors` array. * * In styled mode, the `color` option doesn't take effect. Instead, use * `colorIndex`. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) A description of the point to add to the screen reader * information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesItemDataDragDropOptions; /** * (Highcharts) The `id` of a series in the drilldown.series array to use * for a drilldown for this point. */ drilldown?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesItemDataEventsOptions; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts) The rank for this point's data label in case of collision. * If two data labels are about to overlap, only the one with the highest * `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts) The sequential index of the data point in the legend. */ legendIndex?: number; /** * (Highcharts) The name of the point as shown in the legend, tooltip, * dataLabels etc. */ name?: string; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts) Whether to display a slice offset from the center. */ sliced?: boolean; /** * (Highcharts, Highstock) The y value of the point. */ y?: (number|null); } /** * (Highcharts) An `item` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `item` series are defined in plotOptions.item. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesItemOptions extends PlotItemOptions, SeriesOptions { /** * (Highcharts) An array of data points for the series. For the `item` * series type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will * be interpreted as `y` options. Example:(see online documentation for * example) * * 2. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) */ data?: Array<(number|[string, (number|null)]|null|SeriesItemDataOptions)>; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * Not available */ stack?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "item"; /** * Not available */ xAxis?: undefined; /** * Not available */ yAxis?: undefined; } /** * (Highstock) A Keltner Channels indicator. If the type option is not * specified, it is inherited fromchart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `keltnerchannels` series are defined in * plotOptions.keltnerchannels. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesKeltnerchannelsOptions extends PlotKeltnerchannelsOptions, SeriesOptions { /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "keltnerchannels"; } /** * Information about the legend click event. */ export interface SeriesLegendItemClickEventObject { /** * Related browser event. */ browserEvent: PointerEvent; /** * Prevent the default action of toggle the visibility of the series. */ preventDefault: Function; /** * Related series. */ target: Series; /** * Event type. */ type: "legendItemClick"; } /** * (Highstock) A linear regression intercept series. If the type option is not * specified, it is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `linearregressionangle` series are defined in * plotOptions.linearregressionangle. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesLinearregressionangleOptions extends PlotLinearregressionangleOptions, SeriesOptions { /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "linearregressionangle"; } /** * (Highstock) A linear regression intercept series. If the type option is not * specified, it is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `linearregressionintercept` series are defined in * plotOptions.linearregressionintercept. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesLinearregressioninterceptOptions extends PlotLinearregressioninterceptOptions, SeriesOptions { /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "linearregressionintercept"; } /** * (Highstock) A linear regression series. If the type option is not specified, * it is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `linearregression` series are defined in * plotOptions.linearregression. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesLinearregressionOptions extends PlotLinearregressionOptions, SeriesOptions { /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "linearregression"; } /** * (Highstock) A linear regression slope series. If the type option is not * specified, it is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `linearregressionslope` series are defined in * plotOptions.linearregressionslope. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesLinearregressionslopeOptions extends PlotLinearregressionslopeOptions, SeriesOptions { /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "linearregressionslope"; } export interface SeriesLineDataAccessibilityOptions { /** * (Highcharts, Highstock) Provide a description of the data point, * announced to screen readers. */ description?: string; } /** * (Highcharts, Highstock) Options for the drag handles. */ export interface SeriesLineDataDragDropDragHandleOptions { /** * (Highcharts, Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts, Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The mouse cursor to use for the drag handles. By * default this is intelligently switching between `ew-resize` and * `ns-resize` depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts, Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts, Highstock) Function to define the SVG path to use for the * drag handles. Takes the point as argument. Should return an SVG path in * array format. The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts, Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box default state. */ export interface SeriesLineDataDragDropGuideBoxDefaultOptions { /** * (Highcharts, Highstock) CSS class name of the guide box in this state. * Defaults to `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts, Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Guide box cursor. */ cursor?: string; /** * (Highcharts, Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts, Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts, Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box. The guide box has * one state by default, the `default` state. */ export interface SeriesLineDataDragDropGuideBoxOptions { /** * (Highcharts, Highstock) Style options for the guide box default state. */ default?: SeriesLineDataDragDropGuideBoxDefaultOptions; } /** * (Highcharts, Highstock) Point specific options for the draggable-points * module. Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesLineDataDragDropOptions { /** * (Highcharts, Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts, Highstock) Enable dragging in the Y dimension. Note that * this is not supported for TreeGrid axes (the default axis type in Gantt * charts). */ draggableY?: boolean; /** * (Highcharts, Highstock) Options for the drag handles. */ dragHandle?: SeriesLineDataDragDropDragHandleOptions; /** * (Highcharts, Highstock) Set the maximum X value the points can be moved * to. */ dragMaxX?: number; /** * (Highcharts, Highstock) Set the maximum Y value the points can be moved * to. */ dragMaxY?: number; /** * (Highcharts, Highstock) Set the minimum X value the points can be moved * to. */ dragMinX?: number; /** * (Highcharts, Highstock) Set the minimum Y value the points can be moved * to. */ dragMinY?: number; /** * (Highcharts, Highstock) The X precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionX?: number; /** * (Highcharts, Highstock) The Y precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionY?: number; /** * (Highcharts, Highstock) The amount of pixels to drag the pointer before * it counts as a drag operation. This prevents drag/drop to fire when just * clicking or selecting points. */ dragSensitivity?: number; /** * (Highcharts, Highstock) Group the points by a property. Points with the * same property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts, Highstock) Style options for the guide box. The guide box * has one state by default, the `default` state. */ guideBox?: (SeriesLineDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts, Highstock) Update points as they are dragged. If false, a * guide box is drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesLineDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts, Highstock) Options for the point markers of line-like series. * Properties like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't have * markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface SeriesLineDataMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: SeriesLineDataMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface SeriesLineDataMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface SeriesLineDataMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|SeriesLineDataMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface SeriesLineDataMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface SeriesLineDataMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface SeriesLineDataMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: SeriesLineDataMarkerStatesHoverOptions; inactive?: SeriesLineDataMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: SeriesLineDataMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: SeriesLineDataMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface SeriesLineDataMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts, Highstock) An array of data points for the series. For the * `line` series type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will be * interpreted as `y` options. The `x` values will be automatically calculated, * either starting at 0 and incremented by 1, or from `pointStart` and * `pointInterval` given in the series options. If the axis has categories, * these will be used. Example:(see online documentation for example) * * 2. An array of arrays with 2 values. In this case, the values correspond to * `x,y`. If the first value is a string, it is applied as the name of the * point, and the `x` value is inferred.(see online documentation for example) * * 3. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesLineDataOptions { [key: string]: any; accessibility?: SeriesLineDataAccessibilityOptions; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highstock, Gantt) Individual color for the point. By default * the color is pulled from the global `colors` array. * * In styled mode, the `color` option doesn't take effect. Instead, use * `colorIndex`. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts, Highstock) A description of the point to add to the screen * reader information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts, Highstock) Point specific options for the draggable-points * module. Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesLineDataDragDropOptions; /** * (Highcharts) The `id` of a series in the drilldown.series array to use * for a drilldown for this point. */ drilldown?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesLineDataEventsOptions; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts, Highstock) The rank for this point's data label in case of * collision. If two data labels are about to overlap, only the one with the * highest `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts, Highstock) Options for the point markers of line-like * series. Properties like `fillColor`, `lineColor` and `lineWidth` define * the visual appearance of the markers. Other series types, like column * series, don't have markers, but have visual options on the series level * instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: SeriesLineDataMarkerOptions; /** * (Highcharts, Highstock) The name of the point as shown in the legend, * tooltip, dataLabels etc. */ name?: string; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts, Highstock) The x value of the point. For datetime axes, the * X value is the timestamp in milliseconds since 1970. */ x?: number; /** * (Highcharts, Highstock) The y value of the point. */ y?: (number|null); } /** * (Highcharts, Highstock) A `line` series. If the type option is not specified, * it is inherited from chart.type. * * In TypeScript instead the `type` option must always be set. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `line` series are defined in plotOptions.line. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesLineOptions extends PlotLineOptions, SeriesOptions { /** * (Highcharts, Highstock) An array of data points for the series. For the * `line` series type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will * be interpreted as `y` options. The `x` values will be automatically * calculated, either starting at 0 and incremented by 1, or from * `pointStart` and `pointInterval` given in the series options. If the axis * has categories, these will be used. Example:(see online documentation for * example) * * 2. An array of arrays with 2 values. In this case, the values correspond * to `x,y`. If the first value is a string, it is applied as the name of * the point, and the `x` value is inferred.(see online documentation for * example) * * 3. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) */ data?: Array<(number|[(number|string), (number|null)]|null|SeriesLineDataOptions)>; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "line"; } /** * (Highstock) A `MACD` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `macd` series are defined in plotOptions.macd. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesMacdOptions extends PlotMacdOptions, SeriesOptions { /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "macd"; } /** * (Highmaps) Individual point events */ export interface SeriesMapbubbleDataEventsOptions { /** * (Highmaps) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highmaps) Callback that fires while dragging a point. The mouse event is * passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highmaps) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highmaps) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highmaps) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highmaps) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highmaps) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highmaps) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highmaps) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highmaps) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highmaps) An array of data points for the series. For the `mapbubble` series * type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will be * interpreted as `z` options. Example:(see online documentation for example) * * 2. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesMapbubbleDataOptions { [key: string]: any; /** * (Highmaps) Individual color for the point. By default the color is either * used to denote the value, or pulled from the global `colors` array. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Individual data label for each point. The options are the same * as the ones for plotOptions.series.dataLabels. */ dataLabels?: object; /** * (Highmaps) The `id` of a series in the drilldown.series array to use for * a drilldown for this point. */ drilldown?: string; /** * (Highmaps) Individual point events */ events?: SeriesMapbubbleDataEventsOptions; /** * (Highmaps) An id for the point. This can be used after render time to get * a pointer to the point object through `chart.get()`. */ id?: string; /** * (Highmaps) The name of the point as shown in the legend, tooltip, * dataLabel etc. */ name?: string; /** * (Highmaps) While the `x` and `y` values of the bubble are determined by * the underlying map, the `z` indicates the actual value that gives the * size of the bubble. */ z?: (number|null); } /** * (Highmaps) A `mapbubble` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `mapbubble` series are defined in plotOptions.mapbubble. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesMapbubbleOptions extends PlotMapbubbleOptions, SeriesOptions { /** * (Highmaps) An array of data points for the series. For the `mapbubble` * series type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will * be interpreted as `z` options. Example:(see online documentation for * example) * * 2. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) */ data?: Array<(number|null|SeriesMapbubbleDataOptions)>; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "mapbubble"; } /** * (Highmaps) Individual point events */ export interface SeriesMapDataEventsOptions { /** * (Highmaps) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highmaps) Callback that fires while dragging a point. The mouse event is * passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highmaps) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highmaps) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highmaps) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highmaps) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highmaps) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highmaps) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highmaps) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highmaps) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highmaps) An array of data points for the series. For the `map` series type, * points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will be * interpreted as `value` options. Example:(see online documentation for * example) * * 2. An array of arrays with 2 values. In this case, the values correspond to * `[hc-key, value]`. Example:(see online documentation for example) * * 3. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesMapDataOptions { [key: string]: any; /** * (Highmaps) Individual color for the point. By default the color is either * used to denote the value, or pulled from the global `colors` array. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Individual data label for each point. The options are the same * as the ones for plotOptions.series.dataLabels. */ dataLabels?: object; /** * (Highmaps) The `id` of a series in the drilldown.series array to use for * a drilldown for this point. */ drilldown?: string; /** * (Highmaps) Individual point events */ events?: SeriesMapDataEventsOptions; /** * (Highmaps) An id for the point. This can be used after render time to get * a pointer to the point object through `chart.get()`. */ id?: string; /** * (Highmaps) When data labels are laid out on a map, Highmaps runs a * simplified algorithm to detect collision. When two labels collide, the * one with the lowest rank is hidden. By default the rank is computed from * the area. */ labelrank?: number; /** * (Highmaps) The relative mid point of an area, used to place the data * label. Ranges from 0 to 1\. When `mapData` is used, middleX can be * defined there. */ middleX?: number; /** * (Highmaps) The relative mid point of an area, used to place the data * label. Ranges from 0 to 1\. When `mapData` is used, middleY can be * defined there. */ middleY?: number; /** * (Highmaps) The name of the point as shown in the legend, tooltip, * dataLabel etc. */ name?: string; /** * (Highmaps) For map and mapline series types, the SVG path for the shape. * For compatibily with old IE, not all SVG path definitions are supported, * but M, L and C operators are safe. * * To achieve a better separation between the structure and the data, it is * recommended to use `mapData` to define that paths instead of defining * them on the data points themselves. */ path?: string; /** * (Highmaps) The numeric value of the data point. */ value?: (number|null); } /** * (Highmaps) An array of data points for the series. For the `mapline` series * type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will be * interpreted as `value` options. Example:(see online documentation for * example) * * 2. An array of arrays with 2 values. In this case, the values correspond to * `[hc-key, value]`. Example:(see online documentation for example) * * 3. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesMaplineDataOptions { [key: string]: any; } /** * (Highmaps) A `mapline` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `mapline` series are defined in plotOptions.mapline. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesMaplineOptions extends PlotMaplineOptions, SeriesOptions { /** * (Highmaps) An array of data points for the series. For the `mapline` * series type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will * be interpreted as `value` options. Example:(see online documentation for * example) * * 2. An array of arrays with 2 values. In this case, the values correspond * to `[hc-key, value]`. Example:(see online documentation for example) * * 3. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) */ data?: Array<(number|[string, (number|null)]|null|SeriesMaplineDataOptions)>; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "mapline"; } /** * (Highmaps) A `map` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `map` series are defined in plotOptions.map. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesMapOptions extends PlotMapOptions, SeriesOptions { /** * (Highmaps) An array of data points for the series. For the `map` series * type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will * be interpreted as `value` options. Example:(see online documentation for * example) * * 2. An array of arrays with 2 values. In this case, the values correspond * to `[hc-key, value]`. Example:(see online documentation for example) * * 3. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) */ data?: Array<(number|[string, (number|null)]|null|SeriesMapDataOptions)>; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "map"; } /** * (Highmaps) Individual point events */ export interface SeriesMappointDataEventsOptions { /** * (Highmaps) Fires when a point is clicked. One parameter, `event`, is * passed to the function, containing common event information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highmaps) Callback that fires while dragging a point. The mouse event is * passed in as parameter. The original data can be accessed from * `e.origin`, and the new point values can be accessed from `e.newPoints`. * If there is only a single point being updated, it can be accessed from * `e.newPoint` for simplicity, and its ID can be accessed from * `e.newPointId`. The `this` context is the point being dragged. To stop * the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highmaps) Callback that fires when starting to drag a point. The mouse * event object is passed in as an argument. If a drag handle is used, * `e.updateProp` is set to the data property being dragged. The `this` * context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highmaps) Callback that fires when the point is dropped. The parameters * passed are the same as for drag. To stop the default drop action, return * false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highmaps) Fires when the mouse leaves the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highmaps) Fires when the mouse enters the area close to the point. One * parameter, `event`, is passed to the function, containing common event * information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highmaps) Fires when the point is removed using the `.remove()` method. * One parameter, `event`, is passed to the function. Returning `false` * cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highmaps) Fires when the point is selected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highmaps) Fires when the point is unselected either programmatically or * following a click on the point. One parameter, `event`, is passed to the * function. Returning `false` cancels the operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highmaps) Fires when the point is updated programmatically through the * `.update()` method. One parameter, `event`, is passed to the function. * The new point options can be accessed through `event.options`. Returning * `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highmaps) An array of data points for the series. For the `mappoint` series * type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will be * interpreted as `y` options. The `x` values will be automatically calculated, * either starting at 0 and incremented by 1, or from `pointStart` and * `pointInterval` given in the series options. If the axis has categories, * these will be used. Example:(see online documentation for example) * * 2. An array of arrays with 2 values. In this case, the values correspond to * `x,y`. If the first value is a string, it is applied as the name of the * point, and the `x` value is inferred.(see online documentation for example) * * 3. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesMappointDataOptions { [key: string]: any; /** * (Highmaps) Individual color for the point. By default the color is either * used to denote the value, or pulled from the global `colors` array. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highmaps) Individual data label for each point. The options are the same * as the ones for plotOptions.series.dataLabels. */ dataLabels?: object; /** * (Highmaps) The `id` of a series in the drilldown.series array to use for * a drilldown for this point. */ drilldown?: string; /** * (Highmaps) Individual point events */ events?: SeriesMappointDataEventsOptions; /** * (Highmaps) An id for the point. This can be used after render time to get * a pointer to the point object through `chart.get()`. */ id?: string; /** * (Highmaps) The latitude of the point. Must be combined with the `lon` * option to work. Overrides `x` and `y` values. */ lat?: number; /** * (Highmaps) The longitude of the point. Must be combined with the `lon` * option to work. Overrides `x` and `y` values. */ lon?: number; /** * (Highmaps) The name of the point as shown in the legend, tooltip, * dataLabel etc. */ name?: string; /** * (Highmaps) The x coordinate of the point in terms of the map path * coordinates. */ x?: number; /** * (Highmaps) The x coordinate of the point in terms of the map path * coordinates. */ y?: (number|null); } /** * (Highmaps) A `mappoint` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `mappoint` series are defined in plotOptions.mappoint. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesMappointOptions extends PlotMappointOptions, SeriesOptions { /** * (Highmaps) An array of data points for the series. For the `mappoint` * series type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will * be interpreted as `y` options. The `x` values will be automatically * calculated, either starting at 0 and incremented by 1, or from * `pointStart` and `pointInterval` given in the series options. If the axis * has categories, these will be used. Example:(see online documentation for * example) * * 2. An array of arrays with 2 values. In this case, the values correspond * to `x,y`. If the first value is a string, it is applied as the name of * the point, and the `x` value is inferred.(see online documentation for * example) * * 3. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) */ data?: Array<(number|[number, (number|null)]|null|SeriesMappointDataOptions)>; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "mappoint"; } /** * (Highstock) A `MFI` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `mfi` series are defined in plotOptions.mfi. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesMfiOptions extends PlotMfiOptions, SeriesOptions { /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "mfi"; } /** * (Highstock) A `Momentum` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `momentum` series are defined in plotOptions.momentum. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesMomentumOptions extends PlotMomentumOptions, SeriesOptions { /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "momentum"; } /** * (Highstock) A `NATR` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `natr` series are defined in plotOptions.natr. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesNatrOptions extends PlotNatrOptions, SeriesOptions { /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "natr"; } export interface SeriesNetworkgraphDataAccessibilityOptions { /** * (Highcharts) Provide a description of the data point, announced to screen * readers. */ description?: string; } /** * (Highcharts) Options for the drag handles. */ export interface SeriesNetworkgraphDataDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface SeriesNetworkgraphDataDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface SeriesNetworkgraphDataDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: SeriesNetworkgraphDataDragDropGuideBoxDefaultOptions; } /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesNetworkgraphDataDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: SeriesNetworkgraphDataDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (SeriesNetworkgraphDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesNetworkgraphDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) An array of data points for the series. For the `networkgraph` * series type, points can be given in the following way: * * An array of objects with named values. The following snippet shows only a few * settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesNetworkgraphDataOptions { [key: string]: any; accessibility?: SeriesNetworkgraphDataAccessibilityOptions; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highstock, Gantt) Individual color for the point. By default * the color is pulled from the global `colors` array. * * In styled mode, the `color` option doesn't take effect. Instead, use * `colorIndex`. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) A description of the point to add to the screen reader * information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesNetworkgraphDataDragDropOptions; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesNetworkgraphDataEventsOptions; /** * (Highcharts) The node that the link runs from. */ from?: string; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts) The rank for this point's data label in case of collision. * If two data labels are about to overlap, only the one with the highest * `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts) The name of the point as shown in the legend, tooltip, * dataLabels etc. */ name?: string; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts) The node that the link runs to. */ to?: string; /** * (Highcharts) The weight of the link. */ weight?: number; } /** * (Highcharts) A collection of options for the individual nodes. The nodes in a * networkgraph diagram are auto-generated instances of `Highcharts.Point`, but * options can be applied here and linked by the `id`. */ export interface SeriesNetworkgraphNodesOptions { /** * (Highcharts) The color of the auto generated node. */ color?: ColorString; /** * (Highcharts) The color index of the auto generated node, especially for * use in styled mode. */ colorIndex?: number; /** * (Highcharts) The id of the auto-generated node, refering to the `from` or * `to` setting of the link. */ id?: string; /** * (Highcharts) Mass of the node. By default, each node has mass equal to * it's marker radius . Mass is used to determine how two connected nodes * should affect each other: * * Attractive force is multiplied by the ratio of two connected nodes; if a * big node has weights twice as the small one, then the small one will move * towards the big one twice faster than the big one to the small one . */ mass?: number; /** * (Highcharts) The name to display for the node in data labels and * tooltips. Use this when the name is different from the `id`. Where the id * must be unique for each node, this is not necessary for the name. */ name?: string; } /** * (Highcharts) A `networkgraph` series. If the type option is not specified, it * is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `networkgraph` series are defined in * plotOptions.networkgraph. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesNetworkgraphOptions extends PlotNetworkgraphOptions, SeriesOptions { /** * (Highcharts) An array of data points for the series. For the * `networkgraph` series type, points can be given in the following way: * * An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of * data points exceeds the series' turboThreshold, this option is not * available.(see online documentation for example) */ data?: (SeriesNetworkgraphDataOptions|Array<(object|any[]|number)>); /** * (Highcharts) A collection of options for the individual nodes. The nodes * in a networkgraph diagram are auto-generated instances of * `Highcharts.Point`, but options can be applied here and linked by the * `id`. */ nodes?: Array<SeriesNetworkgraphNodesOptions>; /** * Not available */ stack?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "networkgraph"; /** * Not available */ xAxis?: undefined; /** * Not available */ yAxis?: undefined; } export interface SeriesOhlcDataAccessibilityOptions { /** * (Highstock) Provide a description of the data point, announced to screen * readers. */ description?: string; } /** * (Highstock) Options for the drag handles. */ export interface SeriesOhlcDataDragDropDragHandleOptions { /** * (Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The mouse cursor to use for the drag handles. By default this * is intelligently switching between `ew-resize` and `ns-resize` depending * on the direction the point is being dragged. */ cursor?: string; /** * (Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highstock) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highstock) Style options for the guide box default state. */ export interface SeriesOhlcDataDragDropGuideBoxDefaultOptions { /** * (Highstock) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Guide box cursor. */ cursor?: string; /** * (Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highstock) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface SeriesOhlcDataDragDropGuideBoxOptions { /** * (Highstock) Style options for the guide box default state. */ default?: SeriesOhlcDataDragDropGuideBoxDefaultOptions; } /** * (Highstock) Point specific options for the draggable-points module. Overrides * options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesOhlcDataDragDropOptions { /** * (Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highstock) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highstock) Options for the drag handles. */ dragHandle?: SeriesOhlcDataDragDropDragHandleOptions; /** * (Highstock) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highstock) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highstock) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highstock) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highstock) The X precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionX?: number; /** * (Highstock) The Y precision value to drag to for this series. Set to 0 to * disable. By default this is disabled, except for category axes, where the * default is 1. */ dragPrecisionY?: number; /** * (Highstock) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highstock) Group the points by a property. Points with the same property * value will be grouped together when moving. */ groupBy?: string; /** * (Highstock) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (SeriesOhlcDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highstock) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesOhlcDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highstock) An array of data points for the series. For the `ohlc` series * type, points can be given in the following ways: * * 1. An array of arrays with 5 or 4 values. In this case, the values correspond * to `x,open,high,low,close`. If the first value is a string, it is applied as * the name of the point, and the `x` value is inferred. The `x` value can also * be omitted, in which case the inner arrays should be of length 4\. Then the * `x` value is automatically calculated, either starting at 0 and incremented * by 1, or from `pointStart` and `pointInterval` given in the series * options.(see online documentation for example) * * 2. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesOhlcDataOptions { [key: string]: any; accessibility?: SeriesOhlcDataAccessibilityOptions; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highstock) The closing value of each data point. */ close?: number; /** * (Highcharts, Highstock, Gantt) Individual color for the point. By default * the color is pulled from the global `colors` array. * * In styled mode, the `color` option doesn't take effect. Instead, use * `colorIndex`. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highstock) A description of the point to add to the screen reader * information about the point. Requires the Accessibility module. */ description?: string; /** * (Highstock) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesOhlcDataDragDropOptions; /** * (Highcharts) The `id` of a series in the drilldown.series array to use * for a drilldown for this point. */ drilldown?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesOhlcDataEventsOptions; /** * (Highcharts, Highstock) The high or maximum value for each data point. */ high?: number; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highstock) The rank for this point's data label in case of collision. If * two data labels are about to overlap, only the one with the highest * `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts, Highstock) The low or minimum value for each data point. */ low?: number; /** * (Highstock) The name of the point as shown in the legend, tooltip, * dataLabels etc. */ name?: string; /** * (Highstock) The opening value of each data point. */ open?: number; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts, Highstock) The x value of the point. For datetime axes, the * X value is the timestamp in milliseconds since 1970. */ x?: number; } /** * (Highstock) A `ohlc` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `ohlc` series are defined in plotOptions.ohlc. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesOhlcOptions extends PlotOhlcOptions, SeriesOptions { /** * (Highstock) An array of data points for the series. For the `ohlc` series * type, points can be given in the following ways: * * 1. An array of arrays with 5 or 4 values. In this case, the values * correspond to `x,open,high,low,close`. If the first value is a string, it * is applied as the name of the point, and the `x` value is inferred. The * `x` value can also be omitted, in which case the inner arrays should be * of length 4\. Then the `x` value is automatically calculated, either * starting at 0 and incremented by 1, or from `pointStart` and * `pointInterval` given in the series options.(see online documentation for * example) * * 2. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) */ data?: Array<([(number|string), number, number, number]|[(number|string), number, number, number, number]|SeriesOhlcDataOptions)>; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "ohlc"; } /** * (Highcharts, Highstock, Highmaps, Gantt) Series options for specific data and * the data itself. In TypeScript you have to cast the series options to * specific series types, to get all possible options for a series. */ export interface SeriesOptions { [key: string]: any; /** * (Highcharts, Highstock, Highmaps, Gantt) An id for the series. This can * be used after render time to get a pointer to the series object through * `chart.get()`. */ id?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) The index of the series in the * chart, affecting the internal index in the `chart.series` array, the * visible Z index as well as the order in the legend. */ index?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The sequential index of the * series in the legend. */ legendIndex?: number; /** * (Highmaps) A map data object containing a `path` definition and * optionally additional properties to join in the data as per the `joinBy` * option. */ mapData?: (MapDataObject|Array<MapDataObject>); /** * (Highcharts, Highstock, Highmaps, Gantt) The name of the series as shown * in the legend, tooltip etc. */ name?: string; /** * (Highcharts, Highstock) This option allows grouping series in a stacked * chart. The stack option can be a string or anything else, as long as the * grouped series' stack options match each other after conversion into a * string. */ stack?: (object|string); /** * (Highcharts, Highstock, Highmaps, Gantt) The type of series, for example * `line` or `column`. By default, the series type is inherited from * chart.type, so unless the chart is a combination of series types, there * is no need to set it on the series level. * * In TypeScript instead the `type` option must always be set. */ type: string; /** * (Highcharts, Highstock) When using dual or multiple x axes, this number * defines which xAxis the particular series is connected to. It refers to * either the axis id or the index of the axis in the xAxis array, with 0 * being the first. */ xAxis?: (number|string); /** * (Highcharts, Highstock) When using dual or multiple y axes, this number * defines which yAxis the particular series is connected to. It refers to * either the axis id or the index of the axis in the yAxis array, with 0 * being the first. */ yAxis?: (number|string); /** * (Highcharts, Highstock) Define the visual z index of the series. */ zIndex?: number; } export interface SeriesOrganizationDataAccessibilityOptions { /** * (Highcharts) Provide a description of the data point, announced to screen * readers. */ description?: string; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesOrganizationDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) An array of data points for the series. For the `organization` * series type, points can be given in the following way: * * An array of objects with named values. The following snippet shows only a few * settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesOrganizationDataOptions { [key: string]: any; accessibility?: SeriesOrganizationDataAccessibilityOptions; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts) The color for the individual _link_. By default, the link * color is the same as the node it extends from. The `series.fillOpacity` * option also applies to the points, so when setting a specific link color, * consider setting the `fillOpacity` to 1. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) A description of the point to add to the screen reader * information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesOrganizationDataEventsOptions; /** * (Highcharts) The node that the link runs from. */ from?: string; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts) The rank for this point's data label in case of collision. * If two data labels are about to overlap, only the one with the highest * `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts) The name of the point as shown in the legend, tooltip, * dataLabels etc. */ name?: string; /** * (Highcharts) Whether the link goes out of the system. */ outgoing?: boolean; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts) The node that the link runs to. */ to?: string; /** * (Highcharts) The weight of the link. */ weight?: (number|null); } /** * (Highcharts) A collection of options for the individual nodes. The nodes in * an org chart are auto-generated instances of `Highcharts.Point`, but options * can be applied here and linked by the `id`. */ export interface SeriesOrganizationNodesOptions { /** * (Highcharts) The color of the auto generated node. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The color index of the auto generated node, especially for * use in styled mode. */ colorIndex?: number; /** * (Highcharts) An optional column index of where to place the node. The * default behaviour is to place it next to the preceding node. Note that * this option name is counter intuitive in inverted charts, like for * example an organization chart rendered top down. In this case the * "columns" are horizontal. */ column?: number; /** * (Highcharts) The job description for the node card, will be inserted by * the default `dataLabel.nodeFormatter`. */ description?: string; /** * (Highcharts) The id of the auto-generated node, refering to the `from` or * `to` setting of the link. */ id?: string; /** * (Highcharts) An image for the node card, will be inserted by the default * `dataLabel.nodeFormatter`. */ image?: string; /** * (Highcharts) Layout for the node's children. If `hanging`, this node's * children will hang below their parent, allowing a tighter packing of * nodes in the diagram. */ layout?: SeriesOrganizationNodesLayoutValue; /** * (Highcharts) An optional level index of where to place the node. The * default behaviour is to place it next to the preceding node. Alias of * `nodes.column`, but in inverted sankeys and org charts, the levels are * laid out as rows. */ level?: number; /** * (Highcharts) The name to display for the node in data labels and * tooltips. Use this when the name is different from the `id`. Where the id * must be unique for each node, this is not necessary for the name. */ name?: string; /** * (Highcharts) In a horizontal layout, the vertical offset of a node in * terms of weight. Positive values shift the node downwards, negative shift * it upwards. In a vertical layout, like organization chart, the offset is * horizontal. * * If a percantage string is given, the node is offset by the percentage of * the node size plus `nodePadding`. */ offset?: (number|string); /** * (Highcharts) The job title for the node card, will be inserted by the * default `dataLabel.nodeFormatter`. */ title?: string; } /** * (Highcharts) An `organization` series. If the type option is not specified, * it is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `organization` series are defined in * plotOptions.organization. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesOrganizationOptions extends PlotOrganizationOptions, SeriesOptions { /** * Not available */ curveFactor?: undefined; /** * (Highcharts) An array of data points for the series. For the * `organization` series type, points can be given in the following way: * * An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of * data points exceeds the series' turboThreshold, this option is not * available.(see online documentation for example) */ data?: Array<SeriesOrganizationDataOptions>; /** * (Highcharts) A collection of options for the individual nodes. The nodes * in an org chart are auto-generated instances of `Highcharts.Point`, but * options can be applied here and linked by the `id`. */ nodes?: Array<SeriesOrganizationNodesOptions>; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "organization"; } export interface SeriesPackedbubbleDataAccessibilityOptions { /** * (Highcharts) Provide a description of the data point, announced to screen * readers. */ description?: string; } /** * (Highcharts) Options for the drag handles. */ export interface SeriesPackedbubbleDataDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface SeriesPackedbubbleDataDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface SeriesPackedbubbleDataDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: SeriesPackedbubbleDataDragDropGuideBoxDefaultOptions; } /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesPackedbubbleDataDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: SeriesPackedbubbleDataDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (SeriesPackedbubbleDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesPackedbubbleDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) An array of data points for the series. For the `packedbubble` * series type, points can be given in the following ways: * * 1. An array of `values`.(see online documentation for example) * * 2. An array of objects with named values. The objects are point configuration * objects as seen below. If the total number of data points exceeds the series' * turboThreshold, this option is not available.(see online documentation for * example) */ export interface SeriesPackedbubbleDataOptions { [key: string]: any; accessibility?: SeriesPackedbubbleDataAccessibilityOptions; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highstock, Gantt) Individual color for the point. By default * the color is pulled from the global `colors` array. * * In styled mode, the `color` option doesn't take effect. Instead, use * `colorIndex`. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) A description of the point to add to the screen reader * information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesPackedbubbleDataDragDropOptions; /** * (Highcharts) The `id` of a series in the drilldown.series array to use * for a drilldown for this point. */ drilldown?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesPackedbubbleDataEventsOptions; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts) The rank for this point's data label in case of collision. * If two data labels are about to overlap, only the one with the highest * `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts) The name of the point as shown in the legend, tooltip, * dataLabels etc. */ name?: string; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts, Highstock) The x value of the point. For datetime axes, the * X value is the timestamp in milliseconds since 1970. */ x?: number; /** * (Highcharts, Highstock) The y value of the point. */ y?: (number|null); } /** * (Highcharts, Highstock) A `packedbubble` series. If the type option is not * specified, it is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `packedbubble` series are defined in * plotOptions.packedbubble. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesPackedbubbleOptions extends PlotPackedbubbleOptions, SeriesOptions { /** * (Highcharts) An array of data points for the series. For the * `packedbubble` series type, points can be given in the following ways: * * 1. An array of `values`.(see online documentation for example) * * 2. An array of objects with named values. The objects are point * configuration objects as seen below. If the total number of data points * exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ data?: (SeriesPackedbubbleDataOptions|Array<(object|any[])>); /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * Not available */ stack?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "packedbubble"; } export interface SeriesParetoDataAccessibilityOptions { /** * (Highcharts) Provide a description of the data point, announced to screen * readers. */ description?: string; } /** * (Highcharts) Options for the drag handles. */ export interface SeriesParetoDataDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface SeriesParetoDataDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface SeriesParetoDataDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: SeriesParetoDataDragDropGuideBoxDefaultOptions; } /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesParetoDataDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: SeriesParetoDataDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (SeriesParetoDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesParetoDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) An array of data points for the series. For the `pareto` series * type, points are calculated dynamically. */ export interface SeriesParetoDataOptions { [key: string]: any; accessibility?: SeriesParetoDataAccessibilityOptions; /** * (Highcharts, Highstock) The color of the border surrounding the column or * bar. * * In styled mode, the border stroke can be set with the `.highcharts-point` * rule. */ borderColor?: ColorString; /** * (Highcharts, Highstock) The width of the border surrounding the column or * bar. * * In styled mode, the stroke width can be set with the `.highcharts-point` * rule. */ borderWidth?: number; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highstock, Gantt) Individual color for the point. By default * the color is pulled from the global `colors` array. * * In styled mode, the `color` option doesn't take effect. Instead, use * `colorIndex`. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) A description of the point to add to the screen reader * information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesParetoDataDragDropOptions; /** * (Highcharts) The `id` of a series in the drilldown.series array to use * for a drilldown for this point. */ drilldown?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesParetoDataEventsOptions; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts) The rank for this point's data label in case of collision. * If two data labels are about to overlap, only the one with the highest * `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts) The name of the point as shown in the legend, tooltip, * dataLabels etc. */ name?: string; /** * (Highcharts, Highstock, Gantt) A pixel value specifying a fixed width for * the column or bar. Overrides pointWidth on the series. */ pointWidth?: number; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts, Highstock) The x value of the point. For datetime axes, the * X value is the timestamp in milliseconds since 1970. */ x?: number; /** * (Highcharts, Highstock) The y value of the point. */ y?: (number|null); } /** * (Highcharts) A `pareto` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `pareto` series are defined in plotOptions.pareto. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesParetoOptions extends PlotParetoOptions, SeriesOptions { /** * (Highcharts) An integer identifying the index to use for the base series, * or a string representing the id of the series. */ baseSeries?: (number|string); /** * (Highcharts) An array of data points for the series. For the `pareto` * series type, points are calculated dynamically. */ data?: Array<(Array<(number|string)>|SeriesParetoDataOptions)>; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "pareto"; } /** * (Highstock) A Price channel indicator. If the type option is not specified, * it is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `pc` series are defined in plotOptions.pc. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesPcOptions extends PlotPcOptions, SeriesOptions { /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "pc"; } export interface SeriesPieDataAccessibilityOptions { /** * (Highcharts) Provide a description of the data point, announced to screen * readers. */ description?: string; } /** * (Highcharts) Options for the drag handles. */ export interface SeriesPieDataDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface SeriesPieDataDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface SeriesPieDataDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: SeriesPieDataDragDropGuideBoxDefaultOptions; } /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesPieDataDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: SeriesPieDataDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (SeriesPieDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesPieDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) An array of data points for the series. For the `pie` series * type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will be * interpreted as `y` options. Example:(see online documentation for example) * * 2. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesPieDataOptions { [key: string]: any; accessibility?: SeriesPieDataAccessibilityOptions; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highstock, Gantt) Individual color for the point. By default * the color is pulled from the global `colors` array. * * In styled mode, the `color` option doesn't take effect. Instead, use * `colorIndex`. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) A description of the point to add to the screen reader * information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesPieDataDragDropOptions; /** * (Highcharts) The `id` of a series in the drilldown.series array to use * for a drilldown for this point. */ drilldown?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesPieDataEventsOptions; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts) The rank for this point's data label in case of collision. * If two data labels are about to overlap, only the one with the highest * `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts) The sequential index of the data point in the legend. */ legendIndex?: number; /** * (Highcharts) The name of the point as shown in the legend, tooltip, * dataLabels etc. */ name?: string; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts) Whether to display a slice offset from the center. */ sliced?: boolean; /** * (Highcharts, Highstock) The y value of the point. */ y?: (number|null); } /** * (Highcharts) A `pie` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `pie` series are defined in plotOptions.pie. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesPieOptions extends PlotPieOptions, SeriesOptions { /** * (Highcharts) An array of data points for the series. For the `pie` series * type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will * be interpreted as `y` options. Example:(see online documentation for * example) * * 2. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) */ data?: Array<(number|[string, (number|null)]|null|SeriesPieDataOptions)>; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * Not available */ stack?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "pie"; /** * Not available */ xAxis?: undefined; /** * Not available */ yAxis?: undefined; } /** * (Highstock) A pivot points indicator. If the type option is not specified, it * is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `pivotpoints` series are defined in * plotOptions.pivotpoints. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesPivotpointsOptions extends PlotPivotpointsOptions, SeriesOptions { /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "pivotpoints"; } /** * Translation and scale for the plot area of a series. */ export interface SeriesPlotBoxObject { scaleX: number; scaleY: number; translateX: number; translateY: number; } /** * Common information for a click event on a series point. */ export interface SeriesPointClickEventObject extends PointerEventObject { /** * Clicked point. */ point: Point; } /** * Contains common information for a drag event on series points. */ export interface SeriesPointDragEventObject { /** * New points during drag. */ newPoints: Dictionary<SeriesPointDragPointObject>; /** * Original data. */ origin: object; /** * Prevent default drag action. */ preventDefault: Function; /** * Target point that caused the event. */ target: Point; /** * Event type. */ type: "drag"; } /** * Contains information about a dragged points new values. */ export interface SeriesPointDragPointObject { /** * New values. */ newValues: Dictionary<number>; /** * Dragged point. */ point: Point; } /** * Contains common information for a drag event on series point. */ export interface SeriesPointDragStartEventObject extends MouseEvent { /** * Data property being dragged. */ updateProp: Dictionary<number>; } /** * Contains common information for a drop event on series points. */ export interface SeriesPointDropEventObject { /** * New points after drop. */ newPoints: Dictionary<SeriesPointDropPointObject>; /** * Number of new points. */ numNewPoints: number; /** * Original data. */ origin: object; /** * Prevent default drop action. */ preventDefault: Function; /** * Target point that caused the event. */ target: Point; /** * Event type. */ type: "drop"; } /** * Contains information about a dropped points new values. */ export interface SeriesPointDropPointObject { /** * New values. */ newValues: Dictionary<number>; /** * Dragged point. */ point: Point; } /** * Information about the select event. */ export interface SeriesPointSelectEventObject extends Event { accumulate: boolean; } /** * Information about the unselect event. */ export interface SeriesPointUnselectEventObject extends Event { accumulate: boolean; } /** * Information about the update event. */ export interface SeriesPointUpdateEventObject extends Event { /** * Options data of the update event. */ options: (number|object|Array<(number|string)>|null); } export interface SeriesPolygonDataAccessibilityOptions { /** * (Highcharts, Highstock) Provide a description of the data point, * announced to screen readers. */ description?: string; } /** * (Highcharts, Highstock) Options for the drag handles. */ export interface SeriesPolygonDataDragDropDragHandleOptions { /** * (Highcharts, Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts, Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The mouse cursor to use for the drag handles. By * default this is intelligently switching between `ew-resize` and * `ns-resize` depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts, Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts, Highstock) Function to define the SVG path to use for the * drag handles. Takes the point as argument. Should return an SVG path in * array format. The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts, Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box default state. */ export interface SeriesPolygonDataDragDropGuideBoxDefaultOptions { /** * (Highcharts, Highstock) CSS class name of the guide box in this state. * Defaults to `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts, Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Guide box cursor. */ cursor?: string; /** * (Highcharts, Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts, Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts, Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box. The guide box has * one state by default, the `default` state. */ export interface SeriesPolygonDataDragDropGuideBoxOptions { /** * (Highcharts, Highstock) Style options for the guide box default state. */ default?: SeriesPolygonDataDragDropGuideBoxDefaultOptions; } /** * (Highcharts, Highstock) Point specific options for the draggable-points * module. Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesPolygonDataDragDropOptions { /** * (Highcharts, Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts, Highstock) Enable dragging in the Y dimension. Note that * this is not supported for TreeGrid axes (the default axis type in Gantt * charts). */ draggableY?: boolean; /** * (Highcharts, Highstock) Options for the drag handles. */ dragHandle?: SeriesPolygonDataDragDropDragHandleOptions; /** * (Highcharts, Highstock) Set the maximum X value the points can be moved * to. */ dragMaxX?: number; /** * (Highcharts, Highstock) Set the maximum Y value the points can be moved * to. */ dragMaxY?: number; /** * (Highcharts, Highstock) Set the minimum X value the points can be moved * to. */ dragMinX?: number; /** * (Highcharts, Highstock) Set the minimum Y value the points can be moved * to. */ dragMinY?: number; /** * (Highcharts, Highstock) The X precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionX?: number; /** * (Highcharts, Highstock) The Y precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionY?: number; /** * (Highcharts, Highstock) The amount of pixels to drag the pointer before * it counts as a drag operation. This prevents drag/drop to fire when just * clicking or selecting points. */ dragSensitivity?: number; /** * (Highcharts, Highstock) Group the points by a property. Points with the * same property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts, Highstock) Style options for the guide box. The guide box * has one state by default, the `default` state. */ guideBox?: (SeriesPolygonDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts, Highstock) Update points as they are dragged. If false, a * guide box is drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesPolygonDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts, Highstock) Options for the point markers of line-like series. * Properties like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't have * markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface SeriesPolygonDataMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: SeriesPolygonDataMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface SeriesPolygonDataMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface SeriesPolygonDataMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|SeriesPolygonDataMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface SeriesPolygonDataMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface SeriesPolygonDataMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface SeriesPolygonDataMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: SeriesPolygonDataMarkerStatesHoverOptions; inactive?: SeriesPolygonDataMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: SeriesPolygonDataMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: SeriesPolygonDataMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface SeriesPolygonDataMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts, Highstock) An array of data points for the series. For the * `polygon` series type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will be * interpreted as `y` options. The `x` values will be automatically calculated, * either starting at 0 and incremented by 1, or from `pointStart` and * `pointInterval` given in the series options. If the axis has categories, * these will be used. Example:(see online documentation for example) * * 2. An array of arrays with 2 values. In this case, the values correspond to * `x,y`. If the first value is a string, it is applied as the name of the * point, and the `x` value is inferred.(see online documentation for example) * * 3. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesPolygonDataOptions { [key: string]: any; accessibility?: SeriesPolygonDataAccessibilityOptions; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highstock, Gantt) Individual color for the point. By default * the color is pulled from the global `colors` array. * * In styled mode, the `color` option doesn't take effect. Instead, use * `colorIndex`. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts, Highstock) A description of the point to add to the screen * reader information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts, Highstock) Point specific options for the draggable-points * module. Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesPolygonDataDragDropOptions; /** * (Highcharts) The `id` of a series in the drilldown.series array to use * for a drilldown for this point. */ drilldown?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesPolygonDataEventsOptions; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts, Highstock) The rank for this point's data label in case of * collision. If two data labels are about to overlap, only the one with the * highest `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts, Highstock) Options for the point markers of line-like * series. Properties like `fillColor`, `lineColor` and `lineWidth` define * the visual appearance of the markers. Other series types, like column * series, don't have markers, but have visual options on the series level * instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: SeriesPolygonDataMarkerOptions; /** * (Highcharts, Highstock) The name of the point as shown in the legend, * tooltip, dataLabels etc. */ name?: string; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts, Highstock) The x value of the point. For datetime axes, the * X value is the timestamp in milliseconds since 1970. */ x?: number; /** * (Highcharts, Highstock) The y value of the point. */ y?: (number|null); } /** * (Highcharts, Highstock) A `polygon` series. If the type option is not * specified, it is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `polygon` series are defined in plotOptions.polygon. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesPolygonOptions extends PlotPolygonOptions, SeriesOptions { /** * (Highcharts, Highstock) An array of data points for the series. For the * `polygon` series type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will * be interpreted as `y` options. The `x` values will be automatically * calculated, either starting at 0 and incremented by 1, or from * `pointStart` and `pointInterval` given in the series options. If the axis * has categories, these will be used. Example:(see online documentation for * example) * * 2. An array of arrays with 2 values. In this case, the values correspond * to `x,y`. If the first value is a string, it is applied as the name of * the point, and the `x` value is inferred.(see online documentation for * example) * * 3. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) */ data?: Array<(number|[(number|string), (number|null)]|null|SeriesPolygonDataOptions)>; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * Not available */ stack?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "polygon"; } /** * (Highstock) A `Percentage Price Oscillator` series. If the type option is not * specified, it is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `ppo` series are defined in plotOptions.ppo. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesPpoOptions extends PlotPpoOptions, SeriesOptions { /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "ppo"; } /** * (Highstock) A price envelopes indicator. If the type option is not specified, * it is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `priceenvelopes` series are defined in * plotOptions.priceenvelopes. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesPriceenvelopesOptions extends PlotPriceenvelopesOptions, SeriesOptions { /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "priceenvelopes"; } /** * (Highstock) A `PSAR` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `psar` series are defined in plotOptions.psar. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesPsarOptions extends PlotPsarOptions, SeriesOptions { /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "psar"; } /** * (Highcharts) An array of data points for the series. For the `pyramid3d` * series type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will be * interpreted as `y` options. The `x` values will be automatically calculated, * either starting at 0 and incremented by 1, or from `pointStart` and * `pointInterval` given in the series options. If the axis has categories, * these will be used. Example:(see online documentation for example) * * 2. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesPyramid3dDataOptions { [key: string]: any; } /** * (Highcharts) A `pyramid3d` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `pyramid3d` series are defined in plotOptions.pyramid3d. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesPyramid3dOptions extends PlotPyramid3dOptions, SeriesOptions { /** * (Highcharts) An array of data points for the series. For the `pyramid3d` * series type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will * be interpreted as `y` options. The `x` values will be automatically * calculated, either starting at 0 and incremented by 1, or from * `pointStart` and `pointInterval` given in the series options. If the axis * has categories, these will be used. Example:(see online documentation for * example) * * 2. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) */ data?: Array<(number|Array<number>|SeriesPyramid3dDataOptions)>; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "pyramid3d"; } export interface SeriesPyramidDataAccessibilityOptions { /** * (Highcharts) Provide a description of the data point, announced to screen * readers. */ description?: string; } /** * (Highcharts) Options for the drag handles. */ export interface SeriesPyramidDataDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface SeriesPyramidDataDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface SeriesPyramidDataDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: SeriesPyramidDataDragDropGuideBoxDefaultOptions; } /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesPyramidDataDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: SeriesPyramidDataDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (SeriesPyramidDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesPyramidDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) An array of data points for the series. For the `pyramid` series * type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will be * interpreted as `y` options. Example:(see online documentation for example) * * 2. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesPyramidDataOptions { [key: string]: any; accessibility?: SeriesPyramidDataAccessibilityOptions; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highstock, Gantt) Individual color for the point. By default * the color is pulled from the global `colors` array. * * In styled mode, the `color` option doesn't take effect. Instead, use * `colorIndex`. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) A description of the point to add to the screen reader * information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesPyramidDataDragDropOptions; /** * (Highcharts) The `id` of a series in the drilldown.series array to use * for a drilldown for this point. */ drilldown?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesPyramidDataEventsOptions; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts) The rank for this point's data label in case of collision. * If two data labels are about to overlap, only the one with the highest * `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts) The sequential index of the data point in the legend. */ legendIndex?: number; /** * (Highcharts) The name of the point as shown in the legend, tooltip, * dataLabels etc. */ name?: string; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts, Highstock) The y value of the point. */ y?: (number|null); } /** * (Highcharts) A `pyramid` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `pyramid` series are defined in plotOptions.pyramid. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesPyramidOptions extends PlotPyramidOptions, SeriesOptions { /** * (Highcharts) An array of data points for the series. For the `pyramid` * series type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will * be interpreted as `y` options. Example:(see online documentation for * example) * * 2. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) */ data?: Array<(number|null|SeriesPyramidDataOptions)>; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * Not available */ stack?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "pyramid"; /** * Not available */ xAxis?: undefined; /** * Not available */ yAxis?: undefined; } /** * (Highstock) A `ROC` series. If the type option is not specified, it is * inherited from chart.type. * * Rate of change indicator (ROC). The indicator value for each point is defined * as: * * `(C - Cn) / Cn * 100` * * where: `C` is the close value of the point of the same x in the linked series * and `Cn` is the close value of the point `n` periods ago. `n` is set through * period. * * This series requires `linkedTo` option to be set. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `roc` series are defined in plotOptions.roc. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesRocOptions extends PlotRocOptions, SeriesOptions { /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "roc"; } /** * (Highstock) A `RSI` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `rsi` series are defined in plotOptions.rsi. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesRsiOptions extends PlotRsiOptions, SeriesOptions { /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "rsi"; } export interface SeriesSankeyDataAccessibilityOptions { /** * (Highcharts) Provide a description of the data point, announced to screen * readers. */ description?: string; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesSankeyDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) An array of data points for the series. For the `sankey` series * type, points can be given in the following way: * * An array of objects with named values. The following snippet shows only a few * settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesSankeyDataOptions { [key: string]: any; accessibility?: SeriesSankeyDataAccessibilityOptions; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts) The color for the individual _link_. By default, the link * color is the same as the node it extends from. The `series.fillOpacity` * option also applies to the points, so when setting a specific link color, * consider setting the `fillOpacity` to 1. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) A description of the point to add to the screen reader * information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesSankeyDataEventsOptions; /** * (Highcharts) The node that the link runs from. */ from?: string; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts) The rank for this point's data label in case of collision. * If two data labels are about to overlap, only the one with the highest * `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts) The name of the point as shown in the legend, tooltip, * dataLabels etc. */ name?: string; /** * (Highcharts) Whether the link goes out of the system. */ outgoing?: boolean; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts) The node that the link runs to. */ to?: string; /** * (Highcharts) The weight of the link. */ weight?: (number|null); } /** * (Highcharts) A collection of options for the individual nodes. The nodes in a * sankey diagram are auto-generated instances of `Highcharts.Point`, but * options can be applied here and linked by the `id`. */ export interface SeriesSankeyNodesOptions { /** * (Highcharts) The color of the auto generated node. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The color index of the auto generated node, especially for * use in styled mode. */ colorIndex?: number; /** * (Highcharts) An optional column index of where to place the node. The * default behaviour is to place it next to the preceding node. Note that * this option name is counter intuitive in inverted charts, like for * example an organization chart rendered top down. In this case the * "columns" are horizontal. */ column?: number; /** * (Highcharts) The id of the auto-generated node, refering to the `from` or * `to` setting of the link. */ id?: string; /** * (Highcharts) An optional level index of where to place the node. The * default behaviour is to place it next to the preceding node. Alias of * `nodes.column`, but in inverted sankeys and org charts, the levels are * laid out as rows. */ level?: number; /** * (Highcharts) The name to display for the node in data labels and * tooltips. Use this when the name is different from the `id`. Where the id * must be unique for each node, this is not necessary for the name. */ name?: string; /** * (Highcharts) In a horizontal layout, the vertical offset of a node in * terms of weight. Positive values shift the node downwards, negative shift * it upwards. In a vertical layout, like organization chart, the offset is * horizontal. * * If a percantage string is given, the node is offset by the percentage of * the node size plus `nodePadding`. */ offset?: (number|string); } /** * (Highcharts) A `sankey` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `sankey` series are defined in plotOptions.sankey. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesSankeyOptions extends PlotSankeyOptions, SeriesOptions { /** * Not available */ borderRadius?: undefined; /** * Not available */ crisp?: undefined; /** * (Highcharts) An array of data points for the series. For the `sankey` * series type, points can be given in the following way: * * An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of * data points exceeds the series' turboThreshold, this option is not * available.(see online documentation for example) */ data?: Array<SeriesSankeyDataOptions>; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * Not available */ depth?: undefined; /** * Not available */ edgeColor?: undefined; /** * Not available */ edgeWidth?: undefined; /** * Not available */ grouping?: undefined; /** * Not available */ groupPadding?: undefined; /** * Not available */ groupZPadding?: undefined; /** * Not available */ maxPointWidth?: undefined; /** * (Highcharts) A collection of options for the individual nodes. The nodes * in a sankey diagram are auto-generated instances of `Highcharts.Point`, * but options can be applied here and linked by the `id`. */ nodes?: Array<SeriesSankeyNodesOptions>; /** * Not available */ pointPadding?: undefined; /** * Not available */ pointWidth?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "sankey"; } export interface SeriesScatter3dDataAccessibilityOptions { /** * (Highcharts) Provide a description of the data point, announced to screen * readers. */ description?: string; } /** * (Highcharts) Options for the drag handles. */ export interface SeriesScatter3dDataDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface SeriesScatter3dDataDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface SeriesScatter3dDataDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: SeriesScatter3dDataDragDropGuideBoxDefaultOptions; } /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesScatter3dDataDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: SeriesScatter3dDataDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (SeriesScatter3dDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesScatter3dDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts, Highstock) Options for the point markers of line-like series. * Properties like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't have * markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface SeriesScatter3dDataMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: SeriesScatter3dDataMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface SeriesScatter3dDataMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface SeriesScatter3dDataMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|SeriesScatter3dDataMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface SeriesScatter3dDataMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface SeriesScatter3dDataMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface SeriesScatter3dDataMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: SeriesScatter3dDataMarkerStatesHoverOptions; inactive?: SeriesScatter3dDataMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: SeriesScatter3dDataMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: SeriesScatter3dDataMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface SeriesScatter3dDataMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts) An array of data points for the series. For the `scatter3d` * series type, points can be given in the following ways: * * 1. An array of arrays with 3 values. In this case, the values correspond to * `x,y,z`. If the first value is a string, it is applied as the name of the * point, and the `x` value is inferred.(see online documentation for example) * * 3. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesScatter3dDataOptions { [key: string]: any; accessibility?: SeriesScatter3dDataAccessibilityOptions; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highstock, Gantt) Individual color for the point. By default * the color is pulled from the global `colors` array. * * In styled mode, the `color` option doesn't take effect. Instead, use * `colorIndex`. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) A description of the point to add to the screen reader * information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesScatter3dDataDragDropOptions; /** * (Highcharts) The `id` of a series in the drilldown.series array to use * for a drilldown for this point. */ drilldown?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesScatter3dDataEventsOptions; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts) The rank for this point's data label in case of collision. * If two data labels are about to overlap, only the one with the highest * `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts, Highstock) Options for the point markers of line-like * series. Properties like `fillColor`, `lineColor` and `lineWidth` define * the visual appearance of the markers. Other series types, like column * series, don't have markers, but have visual options on the series level * instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: SeriesScatter3dDataMarkerOptions; /** * (Highcharts) The name of the point as shown in the legend, tooltip, * dataLabels etc. */ name?: string; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts, Highstock) The x value of the point. For datetime axes, the * X value is the timestamp in milliseconds since 1970. */ x?: number; /** * (Highcharts, Highstock) The y value of the point. */ y?: (number|null); /** * (Highcharts) The z value for each data point. */ z?: number; } /** * (Highcharts) A `scatter3d` series. If the type option is not specified, it is * inherited from chart.type. * * scatter3d](#plotOptions.scatter3d). * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `scatter3d` series are defined in plotOptions.scatter3d. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesScatter3dOptions extends PlotScatter3dOptions, SeriesOptions { /** * (Highcharts) An array of data points for the series. For the `scatter3d` * series type, points can be given in the following ways: * * 1. An array of arrays with 3 values. In this case, the values correspond * to `x,y,z`. If the first value is a string, it is applied as the name of * the point, and the `x` value is inferred.(see online documentation for * example) * * 3. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) */ data?: Array<(Array<number>|SeriesScatter3dDataOptions)>; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "scatter3d"; /** * Not available */ useOhlcData?: undefined; } export interface SeriesScatterDataAccessibilityOptions { /** * (Highcharts, Highstock) Provide a description of the data point, * announced to screen readers. */ description?: string; } /** * (Highcharts, Highstock) Options for the drag handles. */ export interface SeriesScatterDataDragDropDragHandleOptions { /** * (Highcharts, Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts, Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The mouse cursor to use for the drag handles. By * default this is intelligently switching between `ew-resize` and * `ns-resize` depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts, Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts, Highstock) Function to define the SVG path to use for the * drag handles. Takes the point as argument. Should return an SVG path in * array format. The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts, Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box default state. */ export interface SeriesScatterDataDragDropGuideBoxDefaultOptions { /** * (Highcharts, Highstock) CSS class name of the guide box in this state. * Defaults to `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts, Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Guide box cursor. */ cursor?: string; /** * (Highcharts, Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts, Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts, Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box. The guide box has * one state by default, the `default` state. */ export interface SeriesScatterDataDragDropGuideBoxOptions { /** * (Highcharts, Highstock) Style options for the guide box default state. */ default?: SeriesScatterDataDragDropGuideBoxDefaultOptions; } /** * (Highcharts, Highstock) Point specific options for the draggable-points * module. Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesScatterDataDragDropOptions { /** * (Highcharts, Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts, Highstock) Enable dragging in the Y dimension. Note that * this is not supported for TreeGrid axes (the default axis type in Gantt * charts). */ draggableY?: boolean; /** * (Highcharts, Highstock) Options for the drag handles. */ dragHandle?: SeriesScatterDataDragDropDragHandleOptions; /** * (Highcharts, Highstock) Set the maximum X value the points can be moved * to. */ dragMaxX?: number; /** * (Highcharts, Highstock) Set the maximum Y value the points can be moved * to. */ dragMaxY?: number; /** * (Highcharts, Highstock) Set the minimum X value the points can be moved * to. */ dragMinX?: number; /** * (Highcharts, Highstock) Set the minimum Y value the points can be moved * to. */ dragMinY?: number; /** * (Highcharts, Highstock) The X precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionX?: number; /** * (Highcharts, Highstock) The Y precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionY?: number; /** * (Highcharts, Highstock) The amount of pixels to drag the pointer before * it counts as a drag operation. This prevents drag/drop to fire when just * clicking or selecting points. */ dragSensitivity?: number; /** * (Highcharts, Highstock) Group the points by a property. Points with the * same property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts, Highstock) Style options for the guide box. The guide box * has one state by default, the `default` state. */ guideBox?: (SeriesScatterDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts, Highstock) Update points as they are dragged. If false, a * guide box is drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesScatterDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts, Highstock) Options for the point markers of line-like series. * Properties like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't have * markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface SeriesScatterDataMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: SeriesScatterDataMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface SeriesScatterDataMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface SeriesScatterDataMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|SeriesScatterDataMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface SeriesScatterDataMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface SeriesScatterDataMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface SeriesScatterDataMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: SeriesScatterDataMarkerStatesHoverOptions; inactive?: SeriesScatterDataMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: SeriesScatterDataMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: SeriesScatterDataMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface SeriesScatterDataMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts, Highstock) An array of data points for the series. For the * `scatter` series type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will be * interpreted as `y` options. The `x` values will be automatically calculated, * either starting at 0 and incremented by 1, or from `pointStart` and * `pointInterval` given in the series options. If the axis has categories, * these will be used. Example:(see online documentation for example) * * 2. An array of arrays with 2 values. In this case, the values correspond to * `x,y`. If the first value is a string, it is applied as the name of the * point, and the `x` value is inferred.(see online documentation for example) * * 3. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesScatterDataOptions { [key: string]: any; accessibility?: SeriesScatterDataAccessibilityOptions; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highstock, Gantt) Individual color for the point. By default * the color is pulled from the global `colors` array. * * In styled mode, the `color` option doesn't take effect. Instead, use * `colorIndex`. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts, Highstock) A description of the point to add to the screen * reader information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts, Highstock) Point specific options for the draggable-points * module. Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesScatterDataDragDropOptions; /** * (Highcharts) The `id` of a series in the drilldown.series array to use * for a drilldown for this point. */ drilldown?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesScatterDataEventsOptions; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts, Highstock) The rank for this point's data label in case of * collision. If two data labels are about to overlap, only the one with the * highest `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts, Highstock) Options for the point markers of line-like * series. Properties like `fillColor`, `lineColor` and `lineWidth` define * the visual appearance of the markers. Other series types, like column * series, don't have markers, but have visual options on the series level * instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: SeriesScatterDataMarkerOptions; /** * (Highcharts, Highstock) The name of the point as shown in the legend, * tooltip, dataLabels etc. */ name?: string; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts, Highstock) The x value of the point. For datetime axes, the * X value is the timestamp in milliseconds since 1970. */ x?: number; /** * (Highcharts, Highstock) The y value of the point. */ y?: (number|null); } /** * (Highcharts, Highstock) A `scatter` series. If the type option is not * specified, it is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `scatter` series are defined in plotOptions.scatter. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesScatterOptions extends PlotScatterOptions, SeriesOptions { /** * (Highcharts, Highstock) An array of data points for the series. For the * `scatter` series type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will * be interpreted as `y` options. The `x` values will be automatically * calculated, either starting at 0 and incremented by 1, or from * `pointStart` and `pointInterval` given in the series options. If the axis * has categories, these will be used. Example:(see online documentation for * example) * * 2. An array of arrays with 2 values. In this case, the values correspond * to `x,y`. If the first value is a string, it is applied as the name of * the point, and the `x` value is inferred.(see online documentation for * example) * * 3. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) */ data?: Array<(number|[(number|string), (number|null)]|null|SeriesScatterDataOptions)>; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "scatter"; /** * Not available */ useOhlcData?: undefined; } /** * (Highstock) A `SMA` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `sma` series are defined in plotOptions.sma. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesSmaOptions extends PlotSmaOptions, SeriesOptions { /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "sma"; /** * Not available */ useOhlcData?: undefined; } export interface SeriesSolidgaugeDataAccessibilityOptions { /** * (Highcharts) Provide a description of the data point, announced to screen * readers. */ description?: string; } /** * (Highcharts) Options for the drag handles. */ export interface SeriesSolidgaugeDataDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface SeriesSolidgaugeDataDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface SeriesSolidgaugeDataDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: SeriesSolidgaugeDataDragDropGuideBoxDefaultOptions; } /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesSolidgaugeDataDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: SeriesSolidgaugeDataDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (SeriesSolidgaugeDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesSolidgaugeDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) An array of data points for the series. For the `solidgauge` * series type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will be * interpreted as `y` options. Example:(see online documentation for example) * * 2. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) * * The typical gauge only contains a single data value. */ export interface SeriesSolidgaugeDataOptions { [key: string]: any; accessibility?: SeriesSolidgaugeDataAccessibilityOptions; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highstock, Gantt) Individual color for the point. By default * the color is pulled from the global `colors` array. * * In styled mode, the `color` option doesn't take effect. Instead, use * `colorIndex`. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) A description of the point to add to the screen reader * information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesSolidgaugeDataDragDropOptions; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesSolidgaugeDataEventsOptions; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts) The inner radius of an individual point in a solid gauge. * Can be given as a number (pixels) or percentage string. */ innerRadius?: (number|string); /** * (Highcharts) The rank for this point's data label in case of collision. * If two data labels are about to overlap, only the one with the highest * `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts) The name of the point as shown in the legend, tooltip, * dataLabels etc. */ name?: string; /** * (Highcharts) The outer radius of an individual point in a solid gauge. * Can be given as a number (pixels) or percentage string. */ radius?: (number|string); /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts, Highstock) The y value of the point. */ y?: (number|null); } /** * (Highcharts) A `solidgauge` series. If the type option is not specified, it * is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `solidgauge` series are defined in plotOptions.solidgauge. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesSolidgaugeOptions extends PlotSolidgaugeOptions, SeriesOptions { /** * (Highcharts) An array of data points for the series. For the `solidgauge` * series type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will * be interpreted as `y` options. Example:(see online documentation for * example) * * 2. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) * * The typical gauge only contains a single data value. */ data?: Array<(number|null|SeriesSolidgaugeDataOptions)>; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * Not available */ dial?: undefined; /** * Not available */ pivot?: undefined; /** * Not available */ stack?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "solidgauge"; /** * Not available */ wrap?: undefined; } export interface SeriesSplineDataAccessibilityOptions { /** * (Highcharts, Highstock) Provide a description of the data point, * announced to screen readers. */ description?: string; } /** * (Highcharts, Highstock) Options for the drag handles. */ export interface SeriesSplineDataDragDropDragHandleOptions { /** * (Highcharts, Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts, Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The mouse cursor to use for the drag handles. By * default this is intelligently switching between `ew-resize` and * `ns-resize` depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts, Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts, Highstock) Function to define the SVG path to use for the * drag handles. Takes the point as argument. Should return an SVG path in * array format. The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts, Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box default state. */ export interface SeriesSplineDataDragDropGuideBoxDefaultOptions { /** * (Highcharts, Highstock) CSS class name of the guide box in this state. * Defaults to `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts, Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Guide box cursor. */ cursor?: string; /** * (Highcharts, Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts, Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts, Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box. The guide box has * one state by default, the `default` state. */ export interface SeriesSplineDataDragDropGuideBoxOptions { /** * (Highcharts, Highstock) Style options for the guide box default state. */ default?: SeriesSplineDataDragDropGuideBoxDefaultOptions; } /** * (Highcharts, Highstock) Point specific options for the draggable-points * module. Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesSplineDataDragDropOptions { /** * (Highcharts, Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts, Highstock) Enable dragging in the Y dimension. Note that * this is not supported for TreeGrid axes (the default axis type in Gantt * charts). */ draggableY?: boolean; /** * (Highcharts, Highstock) Options for the drag handles. */ dragHandle?: SeriesSplineDataDragDropDragHandleOptions; /** * (Highcharts, Highstock) Set the maximum X value the points can be moved * to. */ dragMaxX?: number; /** * (Highcharts, Highstock) Set the maximum Y value the points can be moved * to. */ dragMaxY?: number; /** * (Highcharts, Highstock) Set the minimum X value the points can be moved * to. */ dragMinX?: number; /** * (Highcharts, Highstock) Set the minimum Y value the points can be moved * to. */ dragMinY?: number; /** * (Highcharts, Highstock) The X precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionX?: number; /** * (Highcharts, Highstock) The Y precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionY?: number; /** * (Highcharts, Highstock) The amount of pixels to drag the pointer before * it counts as a drag operation. This prevents drag/drop to fire when just * clicking or selecting points. */ dragSensitivity?: number; /** * (Highcharts, Highstock) Group the points by a property. Points with the * same property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts, Highstock) Style options for the guide box. The guide box * has one state by default, the `default` state. */ guideBox?: (SeriesSplineDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts, Highstock) Update points as they are dragged. If false, a * guide box is drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesSplineDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts, Highstock) Options for the point markers of line-like series. * Properties like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't have * markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface SeriesSplineDataMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: SeriesSplineDataMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface SeriesSplineDataMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface SeriesSplineDataMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|SeriesSplineDataMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface SeriesSplineDataMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface SeriesSplineDataMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface SeriesSplineDataMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: SeriesSplineDataMarkerStatesHoverOptions; inactive?: SeriesSplineDataMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: SeriesSplineDataMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: SeriesSplineDataMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface SeriesSplineDataMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts, Highstock) An array of data points for the series. For the * `spline` series type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will be * interpreted as `y` options. The `x` values will be automatically calculated, * either starting at 0 and incremented by 1, or from `pointStart` and * `pointInterval` given in the series options. If the axis has categories, * these will be used. Example:(see online documentation for example) * * 2. An array of arrays with 2 values. In this case, the values correspond to * `x,y`. If the first value is a string, it is applied as the name of the * point, and the `x` value is inferred.(see online documentation for example) * * 3. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesSplineDataOptions { [key: string]: any; accessibility?: SeriesSplineDataAccessibilityOptions; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highstock, Gantt) Individual color for the point. By default * the color is pulled from the global `colors` array. * * In styled mode, the `color` option doesn't take effect. Instead, use * `colorIndex`. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts, Highstock) A description of the point to add to the screen * reader information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts, Highstock) Point specific options for the draggable-points * module. Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesSplineDataDragDropOptions; /** * (Highcharts) The `id` of a series in the drilldown.series array to use * for a drilldown for this point. */ drilldown?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesSplineDataEventsOptions; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts, Highstock) The rank for this point's data label in case of * collision. If two data labels are about to overlap, only the one with the * highest `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts, Highstock) Options for the point markers of line-like * series. Properties like `fillColor`, `lineColor` and `lineWidth` define * the visual appearance of the markers. Other series types, like column * series, don't have markers, but have visual options on the series level * instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: SeriesSplineDataMarkerOptions; /** * (Highcharts, Highstock) The name of the point as shown in the legend, * tooltip, dataLabels etc. */ name?: string; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts, Highstock) The x value of the point. For datetime axes, the * X value is the timestamp in milliseconds since 1970. */ x?: number; /** * (Highcharts, Highstock) The y value of the point. */ y?: (number|null); } /** * (Highcharts, Highstock) A `spline` series. If the type option is not * specified, it is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `spline` series are defined in plotOptions.spline. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesSplineOptions extends PlotSplineOptions, SeriesOptions { /** * (Highcharts, Highstock) An array of data points for the series. For the * `spline` series type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will * be interpreted as `y` options. The `x` values will be automatically * calculated, either starting at 0 and incremented by 1, or from * `pointStart` and `pointInterval` given in the series options. If the axis * has categories, these will be used. Example:(see online documentation for * example) * * 2. An array of arrays with 2 values. In this case, the values correspond * to `x,y`. If the first value is a string, it is applied as the name of * the point, and the `x` value is inferred.(see online documentation for * example) * * 3. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) */ data?: Array<(number|[(number|string), (number|null)]|null|SeriesSplineDataOptions)>; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "spline"; } /** * (Highstock) A Stochastic indicator. If the type option is not specified, it * is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `stochastic` series are defined in plotOptions.stochastic. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesStochasticOptions extends PlotStochasticOptions, SeriesOptions { /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "stochastic"; } export interface SeriesStreamgraphDataAccessibilityOptions { /** * (Highcharts, Highstock) Provide a description of the data point, * announced to screen readers. */ description?: string; } /** * (Highcharts, Highstock) Options for the drag handles. */ export interface SeriesStreamgraphDataDragDropDragHandleOptions { /** * (Highcharts, Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts, Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The mouse cursor to use for the drag handles. By * default this is intelligently switching between `ew-resize` and * `ns-resize` depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts, Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts, Highstock) Function to define the SVG path to use for the * drag handles. Takes the point as argument. Should return an SVG path in * array format. The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts, Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box default state. */ export interface SeriesStreamgraphDataDragDropGuideBoxDefaultOptions { /** * (Highcharts, Highstock) CSS class name of the guide box in this state. * Defaults to `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts, Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Guide box cursor. */ cursor?: string; /** * (Highcharts, Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts, Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts, Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box. The guide box has * one state by default, the `default` state. */ export interface SeriesStreamgraphDataDragDropGuideBoxOptions { /** * (Highcharts, Highstock) Style options for the guide box default state. */ default?: SeriesStreamgraphDataDragDropGuideBoxDefaultOptions; } /** * (Highcharts, Highstock) Point specific options for the draggable-points * module. Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesStreamgraphDataDragDropOptions { /** * (Highcharts, Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts, Highstock) Enable dragging in the Y dimension. Note that * this is not supported for TreeGrid axes (the default axis type in Gantt * charts). */ draggableY?: boolean; /** * (Highcharts, Highstock) Options for the drag handles. */ dragHandle?: SeriesStreamgraphDataDragDropDragHandleOptions; /** * (Highcharts, Highstock) Set the maximum X value the points can be moved * to. */ dragMaxX?: number; /** * (Highcharts, Highstock) Set the maximum Y value the points can be moved * to. */ dragMaxY?: number; /** * (Highcharts, Highstock) Set the minimum X value the points can be moved * to. */ dragMinX?: number; /** * (Highcharts, Highstock) Set the minimum Y value the points can be moved * to. */ dragMinY?: number; /** * (Highcharts, Highstock) The X precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionX?: number; /** * (Highcharts, Highstock) The Y precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionY?: number; /** * (Highcharts, Highstock) The amount of pixels to drag the pointer before * it counts as a drag operation. This prevents drag/drop to fire when just * clicking or selecting points. */ dragSensitivity?: number; /** * (Highcharts, Highstock) Group the points by a property. Points with the * same property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts, Highstock) Style options for the guide box. The guide box * has one state by default, the `default` state. */ guideBox?: (SeriesStreamgraphDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts, Highstock) Update points as they are dragged. If false, a * guide box is drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesStreamgraphDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts, Highstock) Options for the point markers of line-like series. * Properties like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't have * markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface SeriesStreamgraphDataMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: SeriesStreamgraphDataMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface SeriesStreamgraphDataMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface SeriesStreamgraphDataMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|SeriesStreamgraphDataMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface SeriesStreamgraphDataMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface SeriesStreamgraphDataMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface SeriesStreamgraphDataMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: SeriesStreamgraphDataMarkerStatesHoverOptions; inactive?: SeriesStreamgraphDataMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: SeriesStreamgraphDataMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: SeriesStreamgraphDataMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface SeriesStreamgraphDataMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts, Highstock) An array of data points for the series. For the * `streamgraph` series type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will be * interpreted as `y` options. The `x` values will be automatically calculated, * either starting at 0 and incremented by 1, or from `pointStart` and * `pointInterval` given in the series options. If the axis has categories, * these will be used. Example:(see online documentation for example) * * 2. An array of arrays with 2 values. In this case, the values correspond to * `x,y`. If the first value is a string, it is applied as the name of the * point, and the `x` value is inferred.(see online documentation for example) * * 3. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesStreamgraphDataOptions { [key: string]: any; accessibility?: SeriesStreamgraphDataAccessibilityOptions; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highstock, Gantt) Individual color for the point. By default * the color is pulled from the global `colors` array. * * In styled mode, the `color` option doesn't take effect. Instead, use * `colorIndex`. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts, Highstock) A description of the point to add to the screen * reader information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts, Highstock) Point specific options for the draggable-points * module. Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesStreamgraphDataDragDropOptions; /** * (Highcharts) The `id` of a series in the drilldown.series array to use * for a drilldown for this point. */ drilldown?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesStreamgraphDataEventsOptions; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts, Highstock) The rank for this point's data label in case of * collision. If two data labels are about to overlap, only the one with the * highest `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts, Highstock) Options for the point markers of line-like * series. Properties like `fillColor`, `lineColor` and `lineWidth` define * the visual appearance of the markers. Other series types, like column * series, don't have markers, but have visual options on the series level * instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: SeriesStreamgraphDataMarkerOptions; /** * (Highcharts, Highstock) The name of the point as shown in the legend, * tooltip, dataLabels etc. */ name?: string; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts, Highstock) The x value of the point. For datetime axes, the * X value is the timestamp in milliseconds since 1970. */ x?: number; /** * (Highcharts, Highstock) The y value of the point. */ y?: (number|null); } /** * (Highcharts, Highstock) A `streamgraph` series. If the type option is not * specified, it is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `streamgraph` series are defined in * plotOptions.streamgraph. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesStreamgraphOptions extends PlotStreamgraphOptions, SeriesOptions { /** * (Highcharts, Highstock) An array of data points for the series. For the * `streamgraph` series type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will * be interpreted as `y` options. The `x` values will be automatically * calculated, either starting at 0 and incremented by 1, or from * `pointStart` and `pointInterval` given in the series options. If the axis * has categories, these will be used. Example:(see online documentation for * example) * * 2. An array of arrays with 2 values. In this case, the values correspond * to `x,y`. If the first value is a string, it is applied as the name of * the point, and the `x` value is inferred.(see online documentation for * example) * * 3. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) */ data?: Array<(number|[(number|string), (number|null)]|null|SeriesStreamgraphDataOptions)>; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "streamgraph"; } export interface SeriesSunburstDataAccessibilityOptions { /** * (Highcharts) Provide a description of the data point, announced to screen * readers. */ description?: string; } /** * (Highcharts) Options for the drag handles. */ export interface SeriesSunburstDataDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface SeriesSunburstDataDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface SeriesSunburstDataDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: SeriesSunburstDataDragDropGuideBoxDefaultOptions; } /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesSunburstDataDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: SeriesSunburstDataDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (SeriesSunburstDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesSunburstDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * Options for data labels in the sunburst series. */ export interface SeriesSunburstDataLabelsOptionsObject extends DataLabelsOptionsObject { align: undefined; allowOverlap: undefined; /** * Decides how the data label will be rotated relative to the perimeter of * the sunburst. Valid values are `auto`, `parallel` and `perpendicular`. * When `auto`, the best fit will be computed for the point. * * The `series.rotation` option takes precedence over `rotationMode`. */ rotationMode?: SeriesSunburstDataLabelsRotationValue; } /** * (Highcharts) An array of data points for the series. For the `treemap` series * type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will be * interpreted as `value` options. Example:(see online documentation for * example) * * 2. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesSunburstDataOptions { [key: string]: any; accessibility?: SeriesSunburstDataAccessibilityOptions; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highmaps) The color of the point. In heat maps the point * color is rarely set explicitly, as we use the color to denote the * `value`. Options for this are set in the colorAxis configuration. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts) Serves a purpose only if a `colorAxis` object is defined in * the chart options. This value will decide which color the point gets from * the scale of the colorAxis. */ colorValue?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) A description of the point to add to the screen reader * information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesSunburstDataDragDropOptions; /** * (Highcharts) The `id` of a series in the drilldown.series array to use * for a drilldown for this point. */ drilldown?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesSunburstDataEventsOptions; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts) The rank for this point's data label in case of collision. * If two data labels are about to overlap, only the one with the highest * `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts) The name decides the text for a word. */ name?: string; /** * (Highcharts) Only for treemap. Use this option to build a tree structure. * The value should be the id of the point which is the parent. If no points * has a matching id, or this option is undefined, then the parent will be * set to the root. */ parent?: string; /** * (Highcharts, Highmaps) Point padding for a single point. */ pointPadding?: number; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts) Whether to display a slice offset from the center. When a * sunburst point is sliced, its children are also offset. */ sliced?: boolean; /** * (Highcharts) The value of the point, resulting in a relative area of the * point in the sunburst. */ value?: (number|null); /** * (Highcharts) The weighting of a word. The weight decides the relative * size of a word compared to the rest of the collection. */ weight?: number; } /** * (Highcharts) A `sunburst` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `sunburst` series are defined in plotOptions.sunburst. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesSunburstOptions extends PlotSunburstOptions, SeriesOptions { /** * (Highcharts) An array of data points for the series. For the `treemap` * series type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will * be interpreted as `value` options. Example:(see online documentation for * example) * * 2. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) */ data?: Array<(number|null|SeriesSunburstDataOptions)>; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * Not available */ stack?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "sunburst"; } /** * (Highstock) A `Supertrend indicator` series. If the type option is not * specified, it is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `supertrend` series are defined in plotOptions.supertrend. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesSupertrendOptions extends PlotSupertrendOptions, SeriesOptions { /** * Not available */ data?: undefined; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "supertrend"; } /** * (Highstock) A `TEMA` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `tema` series are defined in plotOptions.tema. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesTemaOptions extends PlotTemaOptions, SeriesOptions { /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "tema"; } export interface SeriesTilemapDataAccessibilityOptions { /** * (Highcharts, Highmaps) Provide a description of the data point, announced * to screen readers. */ description?: string; } /** * (Highcharts, Highmaps) Options for the drag handles. */ export interface SeriesTilemapDataDragDropDragHandleOptions { /** * (Highcharts, Highmaps) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts, Highmaps) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highmaps) The mouse cursor to use for the drag handles. By * default this is intelligently switching between `ew-resize` and * `ns-resize` depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts, Highmaps) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts, Highmaps) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts, Highmaps) Function to define the SVG path to use for the * drag handles. Takes the point as argument. Should return an SVG path in * array format. The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts, Highmaps) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts, Highmaps) Style options for the guide box default state. */ export interface SeriesTilemapDataDragDropGuideBoxDefaultOptions { /** * (Highcharts, Highmaps) CSS class name of the guide box in this state. * Defaults to `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts, Highmaps) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highmaps) Guide box cursor. */ cursor?: string; /** * (Highcharts, Highmaps) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts, Highmaps) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts, Highmaps) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts, Highmaps) Style options for the guide box. The guide box has one * state by default, the `default` state. */ export interface SeriesTilemapDataDragDropGuideBoxOptions { /** * (Highcharts, Highmaps) Style options for the guide box default state. */ default?: SeriesTilemapDataDragDropGuideBoxDefaultOptions; } /** * (Highcharts, Highmaps) Point specific options for the draggable-points * module. Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesTilemapDataDragDropOptions { /** * (Highcharts, Highmaps) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts, Highmaps) Enable dragging in the Y dimension. Note that this * is not supported for TreeGrid axes (the default axis type in Gantt * charts). */ draggableY?: boolean; /** * (Highcharts, Highmaps) Options for the drag handles. */ dragHandle?: SeriesTilemapDataDragDropDragHandleOptions; /** * (Highcharts, Highmaps) Set the maximum X value the points can be moved * to. */ dragMaxX?: number; /** * (Highcharts, Highmaps) Set the maximum Y value the points can be moved * to. */ dragMaxY?: number; /** * (Highcharts, Highmaps) Set the minimum X value the points can be moved * to. */ dragMinX?: number; /** * (Highcharts, Highmaps) Set the minimum Y value the points can be moved * to. */ dragMinY?: number; /** * (Highcharts, Highmaps) The X precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionX?: number; /** * (Highcharts, Highmaps) The Y precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionY?: number; /** * (Highcharts, Highmaps) The amount of pixels to drag the pointer before it * counts as a drag operation. This prevents drag/drop to fire when just * clicking or selecting points. */ dragSensitivity?: number; /** * (Highcharts, Highmaps) Group the points by a property. Points with the * same property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts, Highmaps) Style options for the guide box. The guide box has * one state by default, the `default` state. */ guideBox?: (SeriesTilemapDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts, Highmaps) Update points as they are dragged. If false, a * guide box is drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesTilemapDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts, Highmaps) An array of data points for the series. For the * `tilemap` series type, points can be given in the following ways: * * 1. An array of arrays with 3 or 2 values. In this case, the values correspond * to `x,y,value`. If the first value is a string, it is applied as the name of * the point, and the `x` value is inferred. The `x` value can also be omitted, * in which case the inner arrays should be of length 2\. Then the `x` value is * automatically calculated, either starting at 0 and incremented by 1, or from * `pointStart` and `pointInterval` given in the series options.(see online * documentation for example) * * 2. An array of objects with named values. The objects are point configuration * objects as seen below. If the total number of data points exceeds the series' * turboThreshold, this option is not available.(see online documentation for * example) * * Note that for some tileShapes the grid coordinates are offset. */ export interface SeriesTilemapDataOptions { [key: string]: any; accessibility?: SeriesTilemapDataAccessibilityOptions; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highmaps) The color of the point. In tilemaps the point * color is rarely set explicitly, as we use the color to denote the * `value`. Options for this are set in the colorAxis configuration. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts, Highmaps) A description of the point to add to the screen * reader information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts, Highmaps) Point specific options for the draggable-points * module. Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesTilemapDataDragDropOptions; /** * (Highcharts) The `id` of a series in the drilldown.series array to use * for a drilldown for this point. */ drilldown?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesTilemapDataEventsOptions; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts, Highmaps) The rank for this point's data label in case of * collision. If two data labels are about to overlap, only the one with the * highest `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts, Highmaps) The name of the point as shown in the legend, * tooltip, dataLabels etc. */ name?: string; /** * (Highcharts, Highmaps) Point padding for a single point. */ pointPadding?: number; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts, Highmaps) The value of the point, resulting in a color * controled by options as set in the colorAxis configuration. */ value?: number; /** * (Highcharts, Highmaps) The x coordinate of the point. * * Note that for some tileShapes the grid coordinates are offset. */ x?: number; /** * (Highcharts, Highmaps) The y coordinate of the point. * * Note that for some tileShapes the grid coordinates are offset. */ y?: number; } /** * (Highcharts, Highmaps) A `tilemap` series. If the type option is not * specified, it is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `tilemap` series are defined in plotOptions.tilemap. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesTilemapOptions extends PlotTilemapOptions, SeriesOptions { /** * (Highcharts, Highmaps) An array of data points for the series. For the * `tilemap` series type, points can be given in the following ways: * * 1. An array of arrays with 3 or 2 values. In this case, the values * correspond to `x,y,value`. If the first value is a string, it is applied * as the name of the point, and the `x` value is inferred. The `x` value * can also be omitted, in which case the inner arrays should be of length * 2\. Then the `x` value is automatically calculated, either starting at 0 * and incremented by 1, or from `pointStart` and `pointInterval` given in * the series options.(see online documentation for example) * * 2. An array of objects with named values. The objects are point * configuration objects as seen below. If the total number of data points * exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) * * Note that for some tileShapes the grid coordinates are offset. */ data?: Array<([(number|string), number]|[(number|string), number, number]|SeriesTilemapDataOptions)>; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * Not available */ mapData?: undefined; /** * Not available */ stack?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "tilemap"; } export interface SeriesTimelineDataAccessibilityOptions { /** * (Highcharts) Provide a description of the data point, announced to screen * readers. */ description?: string; } /** * (Highcharts) Options for the drag handles. */ export interface SeriesTimelineDataDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface SeriesTimelineDataDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface SeriesTimelineDataDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: SeriesTimelineDataDragDropGuideBoxDefaultOptions; } /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesTimelineDataDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: SeriesTimelineDataDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (SeriesTimelineDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesTimelineDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) An array of data points for the series. For the `timeline` * series type, points can be given with three general parameters, `name`, * `label`, and `description`: * * Example:(see online documentation for example) If all points additionally * have the `x` values, and xAxis type is set to `datetime`, then events are * laid out on a true time axis, where their placement reflects the actual time * between them. */ export interface SeriesTimelineDataOptions { [key: string]: any; accessibility?: SeriesTimelineDataAccessibilityOptions; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highstock, Gantt) Individual color for the point. By default * the color is pulled from the global `colors` array. * * In styled mode, the `color` option doesn't take effect. Instead, use * `colorIndex`. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) The description of event. This description will be shown in * tooltip. */ description?: string; /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesTimelineDataDragDropOptions; /** * (Highcharts) The `id` of a series in the drilldown.series array to use * for a drilldown for this point. */ drilldown?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesTimelineDataEventsOptions; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts) The label of event. */ label?: string; /** * (Highcharts) The rank for this point's data label in case of collision. * If two data labels are about to overlap, only the one with the highest * `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts) The name of event. */ name?: string; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts, Highstock) The x value of the point. For datetime axes, the * X value is the timestamp in milliseconds since 1970. */ x?: number; } /** * (Highcharts) The `timeline` series. If the type option is not specified, it * is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `timeline` series are defined in plotOptions.timeline. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesTimelineOptions extends PlotTimelineOptions, SeriesOptions { /** * (Highcharts) An array of data points for the series. For the `timeline` * series type, points can be given with three general parameters, `name`, * `label`, and `description`: * * Example:(see online documentation for example) If all points additionally * have the `x` values, and xAxis type is set to `datetime`, then events are * laid out on a true time axis, where their placement reflects the actual * time between them. */ data?: Array<SeriesTimelineDataOptions>; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * Not available */ stack?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "timeline"; } export interface SeriesTreemapDataAccessibilityOptions { /** * (Highcharts) Provide a description of the data point, announced to screen * readers. */ description?: string; } /** * (Highcharts) Options for the drag handles. */ export interface SeriesTreemapDataDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface SeriesTreemapDataDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface SeriesTreemapDataDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: SeriesTreemapDataDragDropGuideBoxDefaultOptions; } /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesTreemapDataDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: SeriesTreemapDataDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (SeriesTreemapDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesTreemapDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) An array of data points for the series. For the `treemap` series * type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will be * interpreted as `value` options. Example:(see online documentation for * example) * * 2. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesTreemapDataOptions { [key: string]: any; accessibility?: SeriesTreemapDataAccessibilityOptions; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highmaps) The color of the point. In heat maps the point * color is rarely set explicitly, as we use the color to denote the * `value`. Options for this are set in the colorAxis configuration. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts) Serves a purpose only if a `colorAxis` object is defined in * the chart options. This value will decide which color the point gets from * the scale of the colorAxis. */ colorValue?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) A description of the point to add to the screen reader * information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesTreemapDataDragDropOptions; /** * (Highcharts) The `id` of a series in the drilldown.series array to use * for a drilldown for this point. */ drilldown?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesTreemapDataEventsOptions; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts) The rank for this point's data label in case of collision. * If two data labels are about to overlap, only the one with the highest * `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts) The name of the point as shown in the legend, tooltip, * dataLabels etc. */ name?: string; /** * (Highcharts) Only for treemap. Use this option to build a tree structure. * The value should be the id of the point which is the parent. If no points * has a matching id, or this option is undefined, then the parent will be * set to the root. */ parent?: string; /** * (Highcharts, Highmaps) Point padding for a single point. */ pointPadding?: number; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts) The value of the point, resulting in a relative area of the * point in the treemap. */ value?: (number|null); } /** * (Highcharts) A `treemap` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `treemap` series are defined in plotOptions.treemap. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesTreemapOptions extends PlotTreemapOptions, SeriesOptions { /** * (Highcharts) An array of data points for the series. For the `treemap` * series type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will * be interpreted as `value` options. Example:(see online documentation for * example) * * 2. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) */ data?: Array<(number|null|SeriesTreemapDataOptions)>; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * Not available */ stack?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "treemap"; } /** * (Highstock) A `TRIX` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `trix` series are defined in plotOptions.trix. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesTrixOptions extends PlotTrixOptions, SeriesOptions { /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "trix"; } export interface SeriesVariablepieDataAccessibilityOptions { /** * (Highcharts) Provide a description of the data point, announced to screen * readers. */ description?: string; } /** * (Highcharts) Options for the drag handles. */ export interface SeriesVariablepieDataDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface SeriesVariablepieDataDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface SeriesVariablepieDataDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: SeriesVariablepieDataDragDropGuideBoxDefaultOptions; } /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesVariablepieDataDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: SeriesVariablepieDataDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (SeriesVariablepieDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesVariablepieDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) An array of data points for the series. For the `variablepie` * series type, points can be given in the following ways: * * 1. An array of arrays with 2 values. In this case, the numerical values will * be interpreted as `y, z` options. Example:(see online documentation for * example) * * 2. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesVariablepieDataOptions { [key: string]: any; accessibility?: SeriesVariablepieDataAccessibilityOptions; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highstock, Gantt) Individual color for the point. By default * the color is pulled from the global `colors` array. * * In styled mode, the `color` option doesn't take effect. Instead, use * `colorIndex`. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) A description of the point to add to the screen reader * information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesVariablepieDataDragDropOptions; /** * (Highcharts) The `id` of a series in the drilldown.series array to use * for a drilldown for this point. */ drilldown?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesVariablepieDataEventsOptions; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts) The rank for this point's data label in case of collision. * If two data labels are about to overlap, only the one with the highest * `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts) The sequential index of the data point in the legend. */ legendIndex?: number; /** * (Highcharts) The name of the point as shown in the legend, tooltip, * dataLabels etc. */ name?: string; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts) Whether to display a slice offset from the center. */ sliced?: boolean; /** * (Highcharts, Highstock) The y value of the point. */ y?: (number|null); } /** * (Highcharts) A `variablepie` series. If the type option is not specified, it * is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `variablepie` series are defined in * plotOptions.variablepie. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesVariablepieOptions extends PlotVariablepieOptions, SeriesOptions { /** * (Highcharts) An array of data points for the series. For the * `variablepie` series type, points can be given in the following ways: * * 1. An array of arrays with 2 values. In this case, the numerical values * will be interpreted as `y, z` options. Example:(see online documentation * for example) * * 2. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) */ data?: Array<([(number|string), number]|SeriesVariablepieDataOptions)>; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * Not available */ stack?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "variablepie"; /** * Not available */ xAxis?: undefined; /** * Not available */ yAxis?: undefined; } export interface SeriesVariwideDataAccessibilityOptions { /** * (Highcharts) Provide a description of the data point, announced to screen * readers. */ description?: string; } /** * (Highcharts) Options for the drag handles. */ export interface SeriesVariwideDataDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface SeriesVariwideDataDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface SeriesVariwideDataDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: SeriesVariwideDataDragDropGuideBoxDefaultOptions; } /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesVariwideDataDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: SeriesVariwideDataDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (SeriesVariwideDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesVariwideDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) An array of data points for the series. For the `variwide` * series type, points can be given in the following ways: * * 1. An array of arrays with 3 or 2 values. In this case, the values correspond * to `x,y,z`. If the first value is a string, it is applied as the name of the * point, and the `x` value is inferred. The `x` value can also be omitted, in * which case the inner arrays should be of length 2. Then the `x` value is * automatically calculated, either starting at 0 and incremented by 1, or from * `pointStart` and `pointInterval` given in the series options.(see online * documentation for example) * * 2. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesVariwideDataOptions { [key: string]: any; accessibility?: SeriesVariwideDataAccessibilityOptions; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highstock, Gantt) Individual color for the point. By default * the color is pulled from the global `colors` array. * * In styled mode, the `color` option doesn't take effect. Instead, use * `colorIndex`. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) A description of the point to add to the screen reader * information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesVariwideDataDragDropOptions; /** * (Highcharts) The `id` of a series in the drilldown.series array to use * for a drilldown for this point. */ drilldown?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesVariwideDataEventsOptions; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts) The rank for this point's data label in case of collision. * If two data labels are about to overlap, only the one with the highest * `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts) The name of the point as shown in the legend, tooltip, * dataLabels etc. */ name?: string; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts, Highstock) The x value of the point. For datetime axes, the * X value is the timestamp in milliseconds since 1970. */ x?: number; /** * (Highcharts, Highstock) The y value of the point. */ y?: (number|null); /** * (Highcharts) The relative width for each column. On a category axis, the * widths are distributed so they sum up to the X axis length. On linear and * datetime axes, the columns will be laid out from the X value and Z units * along the axis. */ z?: number; } /** * (Highcharts) A `variwide` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `variwide` series are defined in plotOptions.variwide. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesVariwideOptions extends PlotVariwideOptions, SeriesOptions { /** * Not available */ crisp?: undefined; /** * (Highcharts) An array of data points for the series. For the `variwide` * series type, points can be given in the following ways: * * 1. An array of arrays with 3 or 2 values. In this case, the values * correspond to `x,y,z`. If the first value is a string, it is applied as * the name of the point, and the `x` value is inferred. The `x` value can * also be omitted, in which case the inner arrays should be of length 2. * Then the `x` value is automatically calculated, either starting at 0 and * incremented by 1, or from `pointStart` and `pointInterval` given in the * series options.(see online documentation for example) * * 2. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) */ data?: Array<([(number|string), number]|[(number|string), number, number]|SeriesVariwideDataOptions)>; /** * Not available */ depth?: undefined; /** * Not available */ edgeColor?: undefined; /** * Not available */ edgeWidth?: undefined; /** * Not available */ groupZPadding?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "variwide"; } /** * (Highstock) A `Volume By Price (VBP)` series. If the type option is not * specified, it is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `vbp` series are defined in plotOptions.vbp. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesVbpOptions extends PlotVbpOptions, SeriesOptions { /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "vbp"; } export interface SeriesVectorDataAccessibilityOptions { /** * (Highcharts, Highstock) Provide a description of the data point, * announced to screen readers. */ description?: string; } /** * (Highcharts, Highstock) Options for the drag handles. */ export interface SeriesVectorDataDragDropDragHandleOptions { /** * (Highcharts, Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts, Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The mouse cursor to use for the drag handles. By * default this is intelligently switching between `ew-resize` and * `ns-resize` depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts, Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts, Highstock) Function to define the SVG path to use for the * drag handles. Takes the point as argument. Should return an SVG path in * array format. The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts, Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box default state. */ export interface SeriesVectorDataDragDropGuideBoxDefaultOptions { /** * (Highcharts, Highstock) CSS class name of the guide box in this state. * Defaults to `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts, Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Guide box cursor. */ cursor?: string; /** * (Highcharts, Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts, Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts, Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box. The guide box has * one state by default, the `default` state. */ export interface SeriesVectorDataDragDropGuideBoxOptions { /** * (Highcharts, Highstock) Style options for the guide box default state. */ default?: SeriesVectorDataDragDropGuideBoxDefaultOptions; } /** * (Highcharts, Highstock) Point specific options for the draggable-points * module. Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesVectorDataDragDropOptions { /** * (Highcharts, Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts, Highstock) Enable dragging in the Y dimension. Note that * this is not supported for TreeGrid axes (the default axis type in Gantt * charts). */ draggableY?: boolean; /** * (Highcharts, Highstock) Options for the drag handles. */ dragHandle?: SeriesVectorDataDragDropDragHandleOptions; /** * (Highcharts, Highstock) Set the maximum X value the points can be moved * to. */ dragMaxX?: number; /** * (Highcharts, Highstock) Set the maximum Y value the points can be moved * to. */ dragMaxY?: number; /** * (Highcharts, Highstock) Set the minimum X value the points can be moved * to. */ dragMinX?: number; /** * (Highcharts, Highstock) Set the minimum Y value the points can be moved * to. */ dragMinY?: number; /** * (Highcharts, Highstock) The X precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionX?: number; /** * (Highcharts, Highstock) The Y precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionY?: number; /** * (Highcharts, Highstock) The amount of pixels to drag the pointer before * it counts as a drag operation. This prevents drag/drop to fire when just * clicking or selecting points. */ dragSensitivity?: number; /** * (Highcharts, Highstock) Group the points by a property. Points with the * same property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts, Highstock) Style options for the guide box. The guide box * has one state by default, the `default` state. */ guideBox?: (SeriesVectorDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts, Highstock) Update points as they are dragged. If false, a * guide box is drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesVectorDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts, Highstock) Options for the point markers of line-like series. * Properties like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't have * markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface SeriesVectorDataMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: SeriesVectorDataMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface SeriesVectorDataMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface SeriesVectorDataMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|SeriesVectorDataMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface SeriesVectorDataMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface SeriesVectorDataMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface SeriesVectorDataMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: SeriesVectorDataMarkerStatesHoverOptions; inactive?: SeriesVectorDataMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: SeriesVectorDataMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: SeriesVectorDataMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface SeriesVectorDataMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts, Highstock) An array of data points for the series. For the * `vector` series type, points can be given in the following ways: * * 1. An array of arrays with 4 values. In this case, the values correspond to * to `x,y,length,direction`. If the first value is a string, it is applied as * the name of the point, and the `x` value is inferred.(see online * documentation for example) * * 2. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesVectorDataOptions { [key: string]: any; accessibility?: SeriesVectorDataAccessibilityOptions; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highstock, Gantt) Individual color for the point. By default * the color is pulled from the global `colors` array. * * In styled mode, the `color` option doesn't take effect. Instead, use * `colorIndex`. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts, Highstock) A description of the point to add to the screen * reader information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts, Highstock) The vector direction in degrees, where 0 is north * (pointing towards south). */ direction?: number; /** * (Highcharts, Highstock) Point specific options for the draggable-points * module. Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesVectorDataDragDropOptions; /** * (Highcharts) The `id` of a series in the drilldown.series array to use * for a drilldown for this point. */ drilldown?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesVectorDataEventsOptions; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts, Highstock) The rank for this point's data label in case of * collision. If two data labels are about to overlap, only the one with the * highest `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts, Highstock) The length of the vector. The rendered length * will relate to the `vectorLength` setting. */ length?: number; /** * (Highcharts, Highstock) Options for the point markers of line-like * series. Properties like `fillColor`, `lineColor` and `lineWidth` define * the visual appearance of the markers. Other series types, like column * series, don't have markers, but have visual options on the series level * instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: SeriesVectorDataMarkerOptions; /** * (Highcharts, Highstock) The name of the point as shown in the legend, * tooltip, dataLabels etc. */ name?: string; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts, Highstock) The x value of the point. For datetime axes, the * X value is the timestamp in milliseconds since 1970. */ x?: number; /** * (Highcharts, Highstock) The y value of the point. */ y?: (number|null); } /** * (Highcharts, Highstock) A `vector` series. If the type option is not * specified, it is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `vector` series are defined in plotOptions.vector. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesVectorOptions extends PlotVectorOptions, SeriesOptions { /** * (Highcharts, Highstock) An array of data points for the series. For the * `vector` series type, points can be given in the following ways: * * 1. An array of arrays with 4 values. In this case, the values correspond * to to `x,y,length,direction`. If the first value is a string, it is * applied as the name of the point, and the `x` value is inferred.(see * online documentation for example) * * 2. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) */ data?: Array<([(number|string), number, number, number]|SeriesVectorDataOptions)>; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "vector"; } export interface SeriesVennDataAccessibilityOptions { /** * (Highcharts) Provide a description of the data point, announced to screen * readers. */ description?: string; } /** * (Highcharts) Options for the drag handles. */ export interface SeriesVennDataDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface SeriesVennDataDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface SeriesVennDataDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: SeriesVennDataDragDropGuideBoxDefaultOptions; } /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesVennDataDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: SeriesVennDataDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (SeriesVennDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesVennDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) An array of data points for the series. For the `scatter` series * type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will be * interpreted as `y` options. The `x` values will be automatically calculated, * either starting at 0 and incremented by 1, or from `pointStart` and * `pointInterval` given in the series options. If the axis has categories, * these will be used. Example:(see online documentation for example) * * 2. An array of arrays with 2 values. In this case, the values correspond to * `x,y`. If the first value is a string, it is applied as the name of the * point, and the `x` value is inferred.(see online documentation for example) * * 3. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesVennDataOptions { [key: string]: any; accessibility?: SeriesVennDataAccessibilityOptions; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highstock, Gantt) Individual color for the point. By default * the color is pulled from the global `colors` array. * * In styled mode, the `color` option doesn't take effect. Instead, use * `colorIndex`. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) A description of the point to add to the screen reader * information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesVennDataDragDropOptions; /** * (Highcharts) The `id` of a series in the drilldown.series array to use * for a drilldown for this point. */ drilldown?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesVennDataEventsOptions; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts) The rank for this point's data label in case of collision. * If two data labels are about to overlap, only the one with the highest * `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts) The name of the point. Used in data labels and tooltip. If * name is not defined then it will default to the joined values in sets. */ name?: number; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts) The set or sets the options will be applied to. If a single * entry is defined, then it will create a new set. If more than one entry * is defined, then it will define the overlap between the sets in the * array. */ sets?: Array<string>; /** * (Highcharts) The value of the point, resulting in a relative area of the * circle, or area of overlap between two sets in the venn or euler diagram. */ value?: number; } /** * (Highcharts) A `venn` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `venn` series are defined in plotOptions.venn. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesVennOptions extends PlotVennOptions, SeriesOptions { /** * (Highcharts) An array of data points for the series. For the `scatter` * series type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will * be interpreted as `y` options. The `x` values will be automatically * calculated, either starting at 0 and incremented by 1, or from * `pointStart` and `pointInterval` given in the series options. If the axis * has categories, these will be used. Example:(see online documentation for * example) * * 2. An array of arrays with 2 values. In this case, the values correspond * to `x,y`. If the first value is a string, it is applied as the name of * the point, and the `x` value is inferred.(see online documentation for * example) * * 3. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) */ data?: Array<SeriesVennDataOptions>; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * Not available */ stack?: undefined; /** * Not available */ steps?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "venn"; /** * Not available */ xAxis?: undefined; /** * Not available */ yAxis?: undefined; } /** * (Highstock) A `Volume Weighted Average Price (VWAP)` series. If the type * option is not specified, it is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `vwap` series are defined in plotOptions.vwap. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesVwapOptions extends PlotVwapOptions, SeriesOptions { /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "vwap"; } export interface SeriesWaterfallDataAccessibilityOptions { /** * (Highcharts) Provide a description of the data point, announced to screen * readers. */ description?: string; } /** * (Highcharts) Options for the drag handles. */ export interface SeriesWaterfallDataDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface SeriesWaterfallDataDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface SeriesWaterfallDataDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: SeriesWaterfallDataDragDropGuideBoxDefaultOptions; } /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesWaterfallDataDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: SeriesWaterfallDataDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (SeriesWaterfallDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesWaterfallDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) An array of data points for the series. For the `waterfall` * series type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will be * interpreted as `y` options. The `x` values will be automatically calculated, * either starting at 0 and incremented by 1, or from `pointStart` and * `pointInterval` given in the series options. If the axis has categories, * these will be used. Example:(see online documentation for example) * * 2. An array of arrays with 2 values. In this case, the values correspond to * `x,y`. If the first value is a string, it is applied as the name of the * point, and the `x` value is inferred.(see online documentation for example) * * 3. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesWaterfallDataOptions { [key: string]: any; accessibility?: SeriesWaterfallDataAccessibilityOptions; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highstock, Gantt) Individual color for the point. By default * the color is pulled from the global `colors` array. * * In styled mode, the `color` option doesn't take effect. Instead, use * `colorIndex`. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) A description of the point to add to the screen reader * information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesWaterfallDataDragDropOptions; /** * (Highcharts) The `id` of a series in the drilldown.series array to use * for a drilldown for this point. */ drilldown?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesWaterfallDataEventsOptions; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts) When this property is true, the points acts as a summary * column for the values added or substracted since the last intermediate * sum, or since the start of the series. The `y` value is ignored. */ isIntermediateSum?: boolean; /** * (Highcharts) When this property is true, the point display the total sum * across the entire series. The `y` value is ignored. */ isSum?: boolean; /** * (Highcharts) The rank for this point's data label in case of collision. * If two data labels are about to overlap, only the one with the highest * `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts) The name of the point as shown in the legend, tooltip, * dataLabels etc. */ name?: string; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts, Highstock) The x value of the point. For datetime axes, the * X value is the timestamp in milliseconds since 1970. */ x?: number; /** * (Highcharts, Highstock) The y value of the point. */ y?: (number|null); } /** * (Highcharts) A `waterfall` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `waterfall` series are defined in plotOptions.waterfall. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesWaterfallOptions extends PlotWaterfallOptions, SeriesOptions { /** * (Highcharts) An array of data points for the series. For the `waterfall` * series type, points can be given in the following ways: * * 1. An array of numerical values. In this case, the numerical values will * be interpreted as `y` options. The `x` values will be automatically * calculated, either starting at 0 and incremented by 1, or from * `pointStart` and `pointInterval` given in the series options. If the axis * has categories, these will be used. Example:(see online documentation for * example) * * 2. An array of arrays with 2 values. In this case, the values correspond * to `x,y`. If the first value is a string, it is applied as the name of * the point, and the `x` value is inferred.(see online documentation for * example) * * 3. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) */ data?: Array<(number|[(number|string), (number|null)]|null|SeriesWaterfallDataOptions)>; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "waterfall"; } /** * (Highstock) A `Williams %R Oscillator` series. If the type option is not * specified, it is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `williamsr` series are defined in plotOptions.williamsr. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesWilliamsrOptions extends PlotWilliamsrOptions, SeriesOptions { /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "williamsr"; } export interface SeriesWindbarbDataAccessibilityOptions { /** * (Highcharts, Highstock) Provide a description of the data point, * announced to screen readers. */ description?: string; } /** * (Highcharts, Highstock) Options for the drag handles. */ export interface SeriesWindbarbDataDragDropDragHandleOptions { /** * (Highcharts, Highstock) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts, Highstock) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The mouse cursor to use for the drag handles. By * default this is intelligently switching between `ew-resize` and * `ns-resize` depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts, Highstock) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts, Highstock) Function to define the SVG path to use for the * drag handles. Takes the point as argument. Should return an SVG path in * array format. The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts, Highstock) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box default state. */ export interface SeriesWindbarbDataDragDropGuideBoxDefaultOptions { /** * (Highcharts, Highstock) CSS class name of the guide box in this state. * Defaults to `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts, Highstock) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Guide box cursor. */ cursor?: string; /** * (Highcharts, Highstock) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts, Highstock) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts, Highstock) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts, Highstock) Style options for the guide box. The guide box has * one state by default, the `default` state. */ export interface SeriesWindbarbDataDragDropGuideBoxOptions { /** * (Highcharts, Highstock) Style options for the guide box default state. */ default?: SeriesWindbarbDataDragDropGuideBoxDefaultOptions; } /** * (Highcharts, Highstock) Point specific options for the draggable-points * module. Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesWindbarbDataDragDropOptions { /** * (Highcharts, Highstock) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts, Highstock) Enable dragging in the Y dimension. Note that * this is not supported for TreeGrid axes (the default axis type in Gantt * charts). */ draggableY?: boolean; /** * (Highcharts, Highstock) Options for the drag handles. */ dragHandle?: SeriesWindbarbDataDragDropDragHandleOptions; /** * (Highcharts, Highstock) Set the maximum X value the points can be moved * to. */ dragMaxX?: number; /** * (Highcharts, Highstock) Set the maximum Y value the points can be moved * to. */ dragMaxY?: number; /** * (Highcharts, Highstock) Set the minimum X value the points can be moved * to. */ dragMinX?: number; /** * (Highcharts, Highstock) Set the minimum Y value the points can be moved * to. */ dragMinY?: number; /** * (Highcharts, Highstock) The X precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionX?: number; /** * (Highcharts, Highstock) The Y precision value to drag to for this series. * Set to 0 to disable. By default this is disabled, except for category * axes, where the default is 1. */ dragPrecisionY?: number; /** * (Highcharts, Highstock) The amount of pixels to drag the pointer before * it counts as a drag operation. This prevents drag/drop to fire when just * clicking or selecting points. */ dragSensitivity?: number; /** * (Highcharts, Highstock) Group the points by a property. Points with the * same property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts, Highstock) Style options for the guide box. The guide box * has one state by default, the `default` state. */ guideBox?: (SeriesWindbarbDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts, Highstock) Update points as they are dragged. If false, a * guide box is drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesWindbarbDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts, Highstock) Options for the point markers of line-like series. * Properties like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't have * markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface SeriesWindbarbDataMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: SeriesWindbarbDataMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface SeriesWindbarbDataMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface SeriesWindbarbDataMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|SeriesWindbarbDataMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface SeriesWindbarbDataMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface SeriesWindbarbDataMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface SeriesWindbarbDataMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: SeriesWindbarbDataMarkerStatesHoverOptions; inactive?: SeriesWindbarbDataMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: SeriesWindbarbDataMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: SeriesWindbarbDataMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface SeriesWindbarbDataMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts, Highstock) An array of data points for the series. For the * `windbarb` series type, points can be given in the following ways: * * 1. An array of arrays with 3 values. In this case, the values correspond to * `x,value,direction`. If the first value is a string, it is applied as the * name of the point, and the `x` value is inferred.(see online documentation * for example) * * 2. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesWindbarbDataOptions { [key: string]: any; accessibility?: SeriesWindbarbDataAccessibilityOptions; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highstock, Gantt) Individual color for the point. By default * the color is pulled from the global `colors` array. * * In styled mode, the `color` option doesn't take effect. Instead, use * `colorIndex`. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts, Highstock) A description of the point to add to the screen * reader information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts, Highstock) The wind direction in degrees, where 0 is north * (pointing towards south). */ direction?: number; /** * (Highcharts, Highstock) Point specific options for the draggable-points * module. Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesWindbarbDataDragDropOptions; /** * (Highcharts) The `id` of a series in the drilldown.series array to use * for a drilldown for this point. */ drilldown?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesWindbarbDataEventsOptions; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts, Highstock) The rank for this point's data label in case of * collision. If two data labels are about to overlap, only the one with the * highest `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts, Highstock) Options for the point markers of line-like * series. Properties like `fillColor`, `lineColor` and `lineWidth` define * the visual appearance of the markers. Other series types, like column * series, don't have markers, but have visual options on the series level * instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: SeriesWindbarbDataMarkerOptions; /** * (Highcharts, Highstock) The name of the point as shown in the legend, * tooltip, dataLabels etc. */ name?: string; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts, Highstock) The wind speed in meters per second. */ value?: number; /** * (Highcharts, Highstock) The x value of the point. For datetime axes, the * X value is the timestamp in milliseconds since 1970. */ x?: number; /** * (Highcharts, Highstock) The y value of the point. */ y?: (number|null); } /** * (Highcharts, Highstock) A `windbarb` series. If the type option is not * specified, it is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `windbarb` series are defined in plotOptions.windbarb. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesWindbarbOptions extends PlotWindbarbOptions, SeriesOptions { /** * (Highcharts, Highstock) An array of data points for the series. For the * `windbarb` series type, points can be given in the following ways: * * 1. An array of arrays with 3 values. In this case, the values correspond * to `x,value,direction`. If the first value is a string, it is applied as * the name of the point, and the `x` value is inferred.(see online * documentation for example) * * 2. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) */ data?: Array<([(number|string), number, number]|SeriesWindbarbDataOptions)>; /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "windbarb"; } /** * (Highstock) A `WMA` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `wma` series are defined in plotOptions.wma. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesWmaOptions extends PlotWmaOptions, SeriesOptions { /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "wma"; } export interface SeriesWordcloudDataAccessibilityOptions { /** * (Highcharts) Provide a description of the data point, announced to screen * readers. */ description?: string; } /** * (Highcharts) Options for the drag handles. */ export interface SeriesWordcloudDataDragDropDragHandleOptions { /** * (Highcharts) The class name of the drag handles. Defaults to * `highcharts-drag-handle`. */ className?: string; /** * (Highcharts) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) The mouse cursor to use for the drag handles. By default * this is intelligently switching between `ew-resize` and `ns-resize` * depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts) Function to define the SVG path to use for the drag handles. * Takes the point as argument. Should return an SVG path in array format. * The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box default state. */ export interface SeriesWordcloudDataDragDropGuideBoxDefaultOptions { /** * (Highcharts) CSS class name of the guide box in this state. Defaults to * `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts) Guide box cursor. */ cursor?: string; /** * (Highcharts) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts) Style options for the guide box. The guide box has one state by * default, the `default` state. */ export interface SeriesWordcloudDataDragDropGuideBoxOptions { /** * (Highcharts) Style options for the guide box default state. */ default?: SeriesWordcloudDataDragDropGuideBoxDefaultOptions; } /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesWordcloudDataDragDropOptions { /** * (Highcharts) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts) Enable dragging in the Y dimension. Note that this is not * supported for TreeGrid axes (the default axis type in Gantt charts). */ draggableY?: boolean; /** * (Highcharts) Options for the drag handles. */ dragHandle?: SeriesWordcloudDataDragDropDragHandleOptions; /** * (Highcharts) Set the maximum X value the points can be moved to. */ dragMaxX?: number; /** * (Highcharts) Set the maximum Y value the points can be moved to. */ dragMaxY?: number; /** * (Highcharts) Set the minimum X value the points can be moved to. */ dragMinX?: number; /** * (Highcharts) Set the minimum Y value the points can be moved to. */ dragMinY?: number; /** * (Highcharts) The X precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionX?: number; /** * (Highcharts) The Y precision value to drag to for this series. Set to 0 * to disable. By default this is disabled, except for category axes, where * the default is 1. */ dragPrecisionY?: number; /** * (Highcharts) The amount of pixels to drag the pointer before it counts as * a drag operation. This prevents drag/drop to fire when just clicking or * selecting points. */ dragSensitivity?: number; /** * (Highcharts) Group the points by a property. Points with the same * property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts) Style options for the guide box. The guide box has one state * by default, the `default` state. */ guideBox?: (SeriesWordcloudDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts) Update points as they are dragged. If false, a guide box is * drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesWordcloudDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts) An array of data points for the series. For the `wordcloud` * series type, points can be given in the following ways: * * 1. An array of arrays with 2 values. In this case, the values correspond to * `name,weight`.(see online documentation for example) * * 2. An array of objects with named values. The following snippet shows only a * few settings, see the complete options set below. If the total number of data * points exceeds the series' turboThreshold, this option is not available.(see * online documentation for example) */ export interface SeriesWordcloudDataOptions { [key: string]: any; accessibility?: SeriesWordcloudDataAccessibilityOptions; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highstock, Gantt) Individual color for the point. By default * the color is pulled from the global `colors` array. * * In styled mode, the `color` option doesn't take effect. Instead, use * `colorIndex`. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts) A description of the point to add to the screen reader * information about the point. Requires the Accessibility module. */ description?: string; /** * (Highcharts) Point specific options for the draggable-points module. * Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesWordcloudDataDragDropOptions; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesWordcloudDataEventsOptions; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts) The rank for this point's data label in case of collision. * If two data labels are about to overlap, only the one with the highest * `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts) The name of the point as shown in the legend, tooltip, * dataLabels etc. */ name?: string; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; } /** * (Highcharts) A `wordcloud` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `wordcloud` series are defined in plotOptions.wordcloud. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesWordcloudOptions extends PlotWordcloudOptions, SeriesOptions { /** * Not available */ crisp?: undefined; /** * Not available */ cropTreshold?: undefined; /** * (Highcharts) An array of data points for the series. For the `wordcloud` * series type, points can be given in the following ways: * * 1. An array of arrays with 2 values. In this case, the values correspond * to `name,weight`.(see online documentation for example) * * 2. An array of objects with named values. The following snippet shows * only a few settings, see the complete options set below. If the total * number of data points exceeds the series' turboThreshold, this option is * not available.(see online documentation for example) */ data?: Array<([string, number]|SeriesWordcloudDataOptions)>; /** * Not available */ depth?: undefined; /** * Not available */ edgeColor?: undefined; /** * Not available */ grouping?: undefined; /** * Not available */ groupPadding?: undefined; /** * Not available */ groupZPadding?: undefined; /** * Not available */ maxPointWidth?: undefined; /** * Not available */ minPointLength?: undefined; /** * Not available */ pointPadding?: undefined; /** * Not available */ pointWidth?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "wordcloud"; } export interface SeriesXrangeDataAccessibilityOptions { /** * (Highcharts, Highstock, Gantt) Provide a description of the data point, * announced to screen readers. */ description?: string; } /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface SeriesXrangeDataConnectEndMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector end markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that this * option is overridden by the `startMarker` and `endMarker` options. */ export interface SeriesXrangeDataConnectMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Gantt) Connect to a point. Requires Highcharts Gantt to be loaded. This * option can be either a string, referring to the ID of another point, or an * object, or an array of either. If the option is an array, each element * defines a connection. */ export interface SeriesXrangeDataConnectOptions { /** * (Gantt) Set the default dash style for this chart's connecting lines. */ dashStyle?: string; /** * (Gantt) Marker options specific to the end markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ endMarker?: SeriesXrangeDataConnectEndMarkerOptions; /** * (Gantt) Set the default color for this chart's Pathfinder connecting * lines. Defaults to the color of the point being connected. */ lineColor?: ColorString; /** * (Gantt) Set the default pixel width for this chart's Pathfinder * connecting lines. */ lineWidth?: number; /** * (Gantt) Marker options for this chart's Pathfinder connectors. Note that * this option is overridden by the `startMarker` and `endMarker` options. */ marker?: SeriesXrangeDataConnectMarkerOptions; /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ startMarker?: SeriesXrangeDataConnectStartMarkerOptions; /** * (Gantt) The ID of the point to connect to. */ to?: string; /** * (Gantt) Set the default pathfinder algorithm to use for this chart. It is * possible to define your own algorithms by adding them to the * Highcharts.Pathfinder.prototype.algorithms object before the chart has * been created. * * The default algorithms are as follows: * * `straight`: Draws a straight line between the connecting points. Does not * avoid other points when drawing. * * `simpleConnect`: Finds a path between the points using right angles only. * Takes only starting/ending points into account, and will not avoid other * points. * * `fastAvoid`: Finds a path between the points using right angles only. * Will attempt to avoid other points, but its focus is performance over * accuracy. Works well with less dense datasets. * * Default value: `straight` is used as default for most series types, while * `simpleConnect` is used as default for Gantt series, to show dependencies * between points. */ type?: PathfinderTypeValue; } /** * (Gantt) Marker options specific to the start markers for this chart's * Pathfinder connectors. Overrides the generic marker options. */ export interface SeriesXrangeDataConnectStartMarkerOptions { /** * (Gantt) Horizontal alignment of the markers relative to the points. */ align?: AlignValue; /** * (Gantt) Set the color of the connector markers. By default this is the * same as the connector color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Gantt) Enable markers for the connectors. */ enabled?: boolean; /** * (Gantt) Set the height of the connector markers. If not supplied, this is * inferred from the marker radius. */ height?: number; /** * (Gantt) Whether or not to draw the markers inside the points. */ inside?: boolean; /** * (Gantt) Set the line/border color of the connector markers. By default * this is the same as the marker color. */ lineColor?: ColorString; /** * (Gantt) Set the line/border width of the pathfinder markers. */ lineWidth?: number; /** * (Gantt) Set the radius of the connector markers. The default is * automatically computed based on the algorithmMargin setting. * * Setting marker.width and marker.height will override this setting. */ radius?: number; /** * (Gantt) Set the symbol of the connector start markers. */ symbol?: string; /** * (Gantt) Vertical alignment of the markers relative to the points. */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Set the width of the connector markers. If not supplied, this is * inferred from the marker radius. */ width?: number; } /** * (Highcharts, Highstock, Gantt) Options for the drag handles. */ export interface SeriesXrangeDataDragDropDragHandleOptions { /** * (Highcharts, Highstock, Gantt) The class name of the drag handles. * Defaults to `highcharts-drag-handle`. */ className?: string; /** * (Highcharts, Highstock, Gantt) The fill color of the drag handles. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) The mouse cursor to use for the drag * handles. By default this is intelligently switching between `ew-resize` * and `ns-resize` depending on the direction the point is being dragged. */ cursor?: string; /** * (Highcharts, Highstock, Gantt) The line color of the drag handles. */ lineColor?: ColorString; /** * (Highcharts, Highstock, Gantt) The line width for the drag handles. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) Function to define the SVG path to use for * the drag handles. Takes the point as argument. Should return an SVG path * in array format. The SVG path is automatically positioned on the point. */ pathFormatter?: Function; /** * (Highcharts, Highstock, Gantt) The z index for the drag handles. */ zIndex?: number; } /** * (Highcharts, Highstock, Gantt) Style options for the guide box default state. */ export interface SeriesXrangeDataDragDropGuideBoxDefaultOptions { /** * (Highcharts, Highstock, Gantt) CSS class name of the guide box in this * state. Defaults to `highcharts-drag-box-default`. */ className?: string; /** * (Highcharts, Highstock, Gantt) Guide box fill color. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) Guide box cursor. */ cursor?: string; /** * (Highcharts, Highstock, Gantt) Color of the border around the guide box. */ lineColor?: ColorString; /** * (Highcharts, Highstock, Gantt) Width of the line around the guide box. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) Guide box zIndex. */ zIndex?: number; } /** * (Highcharts, Highstock, Gantt) Style options for the guide box. The guide box * has one state by default, the `default` state. */ export interface SeriesXrangeDataDragDropGuideBoxOptions { /** * (Highcharts, Highstock, Gantt) Style options for the guide box default * state. */ default?: SeriesXrangeDataDragDropGuideBoxDefaultOptions; } /** * (Highcharts, Highstock, Gantt) Point specific options for the * draggable-points module. Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ export interface SeriesXrangeDataDragDropOptions { /** * (Highcharts, Highstock, Gantt) Enable dragging in the X dimension. */ draggableX?: boolean; /** * (Highcharts, Highstock, Gantt) Enable dragging in the Y dimension. Note * that this is not supported for TreeGrid axes (the default axis type in * Gantt charts). */ draggableY?: boolean; /** * (Highcharts, Highstock, Gantt) Options for the drag handles. */ dragHandle?: SeriesXrangeDataDragDropDragHandleOptions; /** * (Highcharts, Highstock, Gantt) Set the maximum X value the points can be * moved to. */ dragMaxX?: number; /** * (Highcharts, Highstock, Gantt) Set the maximum Y value the points can be * moved to. */ dragMaxY?: number; /** * (Highcharts, Highstock, Gantt) Set the minimum X value the points can be * moved to. */ dragMinX?: number; /** * (Highcharts, Highstock, Gantt) Set the minimum Y value the points can be * moved to. */ dragMinY?: number; /** * (Highcharts, Highstock, Gantt) The X precision value to drag to for this * series. Set to 0 to disable. By default this is disabled, except for * category axes, where the default is 1. */ dragPrecisionX?: number; /** * (Highcharts, Highstock, Gantt) The Y precision value to drag to for this * series. Set to 0 to disable. By default this is disabled, except for * category axes, where the default is 1. */ dragPrecisionY?: number; /** * (Highcharts, Highstock, Gantt) The amount of pixels to drag the pointer * before it counts as a drag operation. This prevents drag/drop to fire * when just clicking or selecting points. */ dragSensitivity?: number; /** * (Highcharts, Highstock, Gantt) Group the points by a property. Points * with the same property value will be grouped together when moving. */ groupBy?: string; /** * (Highcharts, Highstock, Gantt) Style options for the guide box. The guide * box has one state by default, the `default` state. */ guideBox?: (SeriesXrangeDataDragDropGuideBoxOptions|Dictionary<PlotSeriesDragDropGuideBoxDefaultOptions>); /** * (Highcharts, Highstock, Gantt) Update points as they are dragged. If * false, a guide box is drawn to illustrate the new point size. */ liveRedraw?: boolean; } /** * (Highcharts, Highstock, Gantt) Individual point events */ export interface SeriesXrangeDataEventsOptions { /** * (Highcharts, Highstock, Gantt) Fires when a point is clicked. One * parameter, `event`, is passed to the function, containing common event * information. * * If the `series.allowPointSelect` option is true, the default action for * the point's click event is to toggle the point's select state. Returning * `false` cancels this action. */ click?: SeriesPointClickCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires while dragging a * point. The mouse event is passed in as parameter. The original data can * be accessed from `e.origin`, and the new point values can be accessed * from `e.newPoints`. If there is only a single point being updated, it can * be accessed from `e.newPoint` for simplicity, and its ID can be accessed * from `e.newPointId`. The `this` context is the point being dragged. To * stop the default drag action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drag?: SeriesPointDragCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when starting to drag * a point. The mouse event object is passed in as an argument. If a drag * handle is used, `e.updateProp` is set to the data property being dragged. * The `this` context is the point. See drag and drop options. * * Requires the `draggable-points` module. */ dragStart?: SeriesPointDragStartCallbackFunction; /** * (Highcharts, Highstock, Gantt) Callback that fires when the point is * dropped. The parameters passed are the same as for drag. To stop the * default drop action, return false. See drag and drop options. * * Requires the `draggable-points` module. */ drop?: SeriesPointDropCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse leaves the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOut?: SeriesPointMouseOutCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the mouse enters the area close * to the point. One parameter, `event`, is passed to the function, * containing common event information. */ mouseOver?: SeriesPointMouseOverCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is removed using the * `.remove()` method. One parameter, `event`, is passed to the function. * Returning `false` cancels the operation. */ remove?: SeriesPointRemoveCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is selected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ select?: SeriesPointSelectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is unselected either * programmatically or following a click on the point. One parameter, * `event`, is passed to the function. Returning `false` cancels the * operation. */ unselect?: SeriesPointUnselectCallbackFunction; /** * (Highcharts, Highstock, Gantt) Fires when the point is updated * programmatically through the `.update()` method. One parameter, `event`, * is passed to the function. The new point options can be accessed through * `event.options`. Returning `false` cancels the operation. */ update?: SeriesPointUpdateCallbackFunction; } /** * (Highcharts, Highstock) Options for the point markers of line-like series. * Properties like `fillColor`, `lineColor` and `lineWidth` define the visual * appearance of the markers. Other series types, like column series, don't have * markers, but have visual options on the series level instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ export interface SeriesXrangeDataMarkerOptions { /** * (Highcharts, Highstock) Enable or disable the point marker. If * `undefined`, the markers are hidden when the data is dense, and shown for * more widespread data points. */ enabled?: boolean; /** * (Highcharts, Highstock) The threshold for how dense the point markers * should be before they are hidden, given that `enabled` is not defined. * The number indicates the horizontal distance between the two closest * points in the series, as multiples of the `marker.radius`. In other * words, the default value of 2 means points are hidden if overlapping * horizontally. */ enabledThreshold?: number; /** * (Highcharts, Highstock) The fill color of the point marker. When * `undefined`, the series' or point's color is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `width` must also be set. */ height?: number; /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. */ radius?: number; /** * (Highcharts, Highstock) States for a single point marker. */ states?: SeriesXrangeDataMarkerStatesOptions; /** * (Highcharts, Highstock) A predefined shape or symbol for the marker. When * undefined, the symbol is pulled from options.symbols. Other possible * values are "circle", "square", "diamond", "triangle" and "triangle-down". * * Additionally, the URL to a graphic can be given on this form: * "url(graphic.png)". Note that for the image to be applied to exported * charts, its URL needs to be accessible by the export server. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols`. The callback is then used by * its method name, as shown in the demo. */ symbol?: string; /** * (Highcharts, Highstock) Image markers only. Set the image width * explicitly. When using this option, a `height` must also be set. */ width?: number; } /** * (Highcharts, Highstock) Animation when hovering over the marker. */ export interface SeriesXrangeDataMarkerStatesHoverAnimationOptions { duration?: number; } /** * (Highcharts, Highstock) The hover state for a single point marker. */ export interface SeriesXrangeDataMarkerStatesHoverOptions { /** * (Highcharts, Highstock) Animation when hovering over the marker. */ animation?: (boolean|AnimationOptionsObject|SeriesXrangeDataMarkerStatesHoverAnimationOptions); /** * (Highcharts, Highstock) Enable or disable the point marker. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the marker in hover state. When * `undefined`, the series' or point's fillColor for normal state is used. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's lineColor for normal state is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. When * `undefined`, the series' or point's lineWidth for normal state is used. */ lineWidth?: number; /** * (Highcharts, Highstock) The additional line width for a hovered point. */ lineWidthPlus?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2 as per the radiusPlus * option. */ radius?: number; /** * (Highcharts, Highstock) The number of pixels to increase the radius of * the hovered point. */ radiusPlus?: number; } export interface SeriesXrangeDataMarkerStatesInactiveOptions { /** * (Highcharts, Highstock) Opacity of inactive markers. */ opacity?: any; } /** * (Highcharts, Highstock) The normal state of a single point marker. Currently * only used for setting animation when returning to normal state from hover. */ export interface SeriesXrangeDataMarkerStatesNormalOptions { /** * (Highcharts, Highstock) Animation when returning to normal state after * hovering. */ animation?: (boolean|AnimationOptionsObject); } /** * (Highcharts, Highstock) States for a single point marker. */ export interface SeriesXrangeDataMarkerStatesOptions { /** * (Highcharts, Highstock) The hover state for a single point marker. */ hover?: SeriesXrangeDataMarkerStatesHoverOptions; inactive?: SeriesXrangeDataMarkerStatesInactiveOptions; /** * (Highcharts, Highstock) The normal state of a single point marker. * Currently only used for setting animation when returning to normal state * from hover. */ normal?: SeriesXrangeDataMarkerStatesNormalOptions; /** * (Highcharts, Highstock) The appearance of the point marker when selected. * In order to allow a point to be selected, set the * `series.allowPointSelect` option to true. */ select?: SeriesXrangeDataMarkerStatesSelectOptions; } /** * (Highcharts, Highstock) The appearance of the point marker when selected. In * order to allow a point to be selected, set the `series.allowPointSelect` * option to true. */ export interface SeriesXrangeDataMarkerStatesSelectOptions { /** * (Highcharts, Highstock) Enable or disable visible feedback for selection. */ enabled?: boolean; /** * (Highcharts, Highstock) The fill color of the point marker. */ fillColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock) The color of the point marker's outline. When * `undefined`, the series' or point's color is used. */ lineColor?: ColorString; /** * (Highcharts, Highstock) The width of the point marker's outline. */ lineWidth?: number; /** * (Highcharts, Highstock) The radius of the point marker. In hover state, * it defaults to the normal state's radius + 2. */ radius?: number; } /** * (Highcharts, Highstock, Gantt) An array of data points for the series. For * the `xrange` series type, points can be given in the following ways: * * 1. An array of objects with named values. The objects are point configuration * objects as seen below.(see online documentation for example) */ export interface SeriesXrangeDataOptions { [key: string]: any; accessibility?: SeriesXrangeDataAccessibilityOptions; /** * (Highcharts, Gantt) An additional, individual class name for the data * point's graphic representation. */ className?: string; /** * (Highcharts, Highstock, Gantt) Individual color for the point. By default * the color is pulled from the global `colors` array. * * In styled mode, the `color` option doesn't take effect. Instead, use * `colorIndex`. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Gantt) A specific color index to use for the point, so its * graphic representations are given the class name `highcharts-color-{n}`. * In styled mode this will change the color of the graphic. In non-styled * mode, the color by is set by the `fill` attribute, so the change in class * name won't have a visual effect by default. */ colorIndex?: number; /** * (Gantt) Connect to a point. Requires Highcharts Gantt to be loaded. This * option can be either a string, referring to the ID of another point, or * an object, or an array of either. If the option is an array, each element * defines a connection. */ connect?: (string|SeriesXrangeDataConnectOptions|Array<(string|SeriesXrangeDataConnectOptions)>); /** * (Highcharts, Highstock, Gantt) Individual data label for each point. The * options are the same as the ones for plotOptions.series.dataLabels. */ dataLabels?: DataLabelsOptionsObject; /** * (Highcharts, Highstock, Gantt) A description of the point to add to the * screen reader information about the point. Requires the Accessibility * module. */ description?: string; /** * (Highcharts, Highstock, Gantt) Point specific options for the * draggable-points module. Overrides options on `series.dragDrop`. * * Requires the `draggable-points` module. */ dragDrop?: SeriesXrangeDataDragDropOptions; /** * (Highcharts) The `id` of a series in the drilldown.series array to use * for a drilldown for this point. */ drilldown?: string; /** * (Highcharts, Highstock, Gantt) Individual point events */ events?: SeriesXrangeDataEventsOptions; /** * (Highcharts, Highstock, Gantt) An id for the point. This can be used * after render time to get a pointer to the point object through * `chart.get()`. */ id?: string; /** * (Highcharts, Highstock, Gantt) The rank for this point's data label in * case of collision. If two data labels are about to overlap, only the one * with the highest `labelrank` will be drawn. */ labelrank?: number; /** * (Highcharts, Highstock) Options for the point markers of line-like * series. Properties like `fillColor`, `lineColor` and `lineWidth` define * the visual appearance of the markers. Other series types, like column * series, don't have markers, but have visual options on the series level * instead. * * In styled mode, the markers can be styled with the `.highcharts-point`, * `.highcharts-point-hover` and `.highcharts-point-select` class names. */ marker?: SeriesXrangeDataMarkerOptions; /** * (Highcharts, Highstock, Gantt) The name of the point as shown in the * legend, tooltip, dataLabels etc. */ name?: string; /** * (Highcharts, Highstock, Gantt) A partial fill for each point, typically * used to visualize how much of a task is performed. The partial fill * object can be set either on series or point level. */ partialFill?: SeriesXrangeDataPartialFillOptions; /** * (Highcharts, Highstock, Gantt) Whether the data point is selected * initially. */ selected?: boolean; /** * (Highcharts, Highstock, Gantt) The starting X value of the range point. */ x?: number; /** * (Highcharts, Highstock, Gantt) The ending X value of the range point. */ x2?: number; /** * (Highcharts, Highstock, Gantt) The Y value of the range point. */ y?: number; } /** * (Highcharts, Highstock, Gantt) A partial fill for each point, typically used * to visualize how much of a task is performed. The partial fill object can be * set either on series or point level. */ export interface SeriesXrangeDataPartialFillOptions { /** * (Highcharts, Highstock, Gantt) The amount of the X-range point to be * filled. Values can be 0-1 and are converted to percentages in the default * data label formatter. */ amount?: number; /** * (Highcharts, Highstock, Gantt) The fill color to be used for partial * fills. Defaults to a darker shade of the point color. */ fill?: (ColorString|GradientColorObject|PatternObject); } /** * (Highcharts, Highstock, Gantt) An `xrange` series. If the type option is not * specified, it is inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `xrange` series are defined in plotOptions.xrange. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesXrangeOptions extends PlotXrangeOptions, SeriesOptions { /** * Not available */ crisp?: undefined; /** * (Highcharts, Highstock, Gantt) An array of data points for the series. * For the `xrange` series type, points can be given in the following ways: * * 1. An array of objects with named values. The objects are point * configuration objects as seen below.(see online documentation for * example) */ data?: Array<SeriesXrangeDataOptions>; /** * Not available */ depth?: undefined; /** * Not available */ edgeColor?: undefined; /** * Not available */ edgeWidth?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "xrange"; } /** * (Highstock) A `Zig Zag` series. If the type option is not specified, it is * inherited from chart.type. * * In TypeScript the type option must always be set. * * Configuration options for the series are given in three levels: * * 1. Options for all series in a chart are defined in the plotOptions.series * object. * * 2. Options for all `zigzag` series are defined in plotOptions.zigzag. * * 3. Options for one single series are given in the series instance array.(see * online documentation for example) */ export interface SeriesZigzagOptions extends PlotZigzagOptions, SeriesOptions { /** * Not available */ dataParser?: undefined; /** * Not available */ dataURL?: undefined; /** * (Highcharts, Highstock, Highmaps, Gantt) This property is only in * TypeScript non-optional and might be `undefined` in series objects from * unknown sources. */ type: "zigzag"; } /** * The shadow options. */ export interface ShadowOptionsObject { /** * The shadow color. */ color?: string; /** * The horizontal offset from the element. */ offsetX?: number; /** * The vertical offset from the element. */ offsetY?: number; /** * The shadow opacity. */ opacity?: number; /** * The shadow width or distance from the element. */ width?: number; } /** * (Highcharts) Stack of data points */ export interface StackItemObject { /** * Alignment settings */ alignOptions: AlignObject; /** * Related axis */ axis: Axis; /** * Cumulative value of the stacked data points */ cumulative: number; /** * True if on the negative side */ isNegative: boolean; /** * Related SVG element */ label: SVGElement; /** * Related stack options */ options: YAxisStackLabelsOptions; /** * Total value of the stacked data points */ total: number; /** * Shared x value of the stack */ x: number; } /** * A config object for bindings in Stock Tools module. */ export interface StockToolsBindingsObject { /** * ClassName of the element for a binding. */ className?: string; /** * Last event to be fired after last step event. */ end?: Function; /** * Initial event, fired on a button click. */ init?: Function; /** * Event fired on first click on a chart. */ start?: Function; /** * Last event to be fired after last step event. Array of step events to be * called sequentially after each user click. */ steps?: Array<Function>; } export interface StockToolsGuiDefinitionsAdvancedFibonacciOptions { /** * (Highstock) A predefined background symbol for the button. */ symbol?: string; } export interface StockToolsGuiDefinitionsAdvancedOptions { fibonacci?: StockToolsGuiDefinitionsAdvancedFibonacciOptions; /** * (Highstock) A collection of strings pointing to config options for the * items. */ items?: any[]; parallelChannel?: StockToolsGuiDefinitionsAdvancedParallelChannelOptions; pitchfork?: StockToolsGuiDefinitionsAdvancedPitchforkOptions; } export interface StockToolsGuiDefinitionsAdvancedParallelChannelOptions { /** * (Highstock) A predefined background symbol for the button. */ symbol?: string; } export interface StockToolsGuiDefinitionsAdvancedPitchforkOptions { /** * (Highstock) A predefined background symbol for the button. */ symbol?: string; } export interface StockToolsGuiDefinitionsCrookedLinesCrooked3Options { /** * (Highstock) A predefined background symbol for the button. */ symbol?: string; } export interface StockToolsGuiDefinitionsCrookedLinesCrooked5Options { /** * (Highstock) A predefined background symbol for the button. */ symbol?: string; } export interface StockToolsGuiDefinitionsCrookedLinesElliott3Options { /** * (Highstock) A predefined background symbol for the button. */ symbol?: string; } export interface StockToolsGuiDefinitionsCrookedLinesElliott5Options { /** * (Highstock) A predefined background symbol for the button. */ symbol?: string; } export interface StockToolsGuiDefinitionsCrookedLinesOptions { crooked3?: StockToolsGuiDefinitionsCrookedLinesCrooked3Options; crooked5?: StockToolsGuiDefinitionsCrookedLinesCrooked5Options; elliott3?: StockToolsGuiDefinitionsCrookedLinesElliott3Options; elliott5?: StockToolsGuiDefinitionsCrookedLinesElliott5Options; /** * (Highstock) A collection of strings pointing to config options for the * items. */ items?: any[]; } export interface StockToolsGuiDefinitionsCurrentPriceIndicatorOptions { /** * (Highstock) A predefined background symbol for the button. */ symbol?: string; } export interface StockToolsGuiDefinitionsFlagsFlagCirclepinOptions { /** * (Highstock) A predefined background symbol for the button. */ symbol?: string; } export interface StockToolsGuiDefinitionsFlagsFlagDiamondpinOptions { /** * (Highstock) A predefined background symbol for the button. */ symbol?: string; } export interface StockToolsGuiDefinitionsFlagsFlagSimplepinOptions { /** * (Highstock) A predefined background symbol for the button. */ symbol?: string; } export interface StockToolsGuiDefinitionsFlagsFlagSquarepinOptions { /** * (Highstock) A predefined background symbol for the button. */ symbol?: string; } export interface StockToolsGuiDefinitionsFlagsOptions { flagCirclepin?: StockToolsGuiDefinitionsFlagsFlagCirclepinOptions; flagDiamondpin?: StockToolsGuiDefinitionsFlagsFlagDiamondpinOptions; flagSimplepin?: StockToolsGuiDefinitionsFlagsFlagSimplepinOptions; flagSquarepin?: StockToolsGuiDefinitionsFlagsFlagSquarepinOptions; /** * (Highstock) A collection of strings pointing to config options for the * items. */ items?: any[]; } export interface StockToolsGuiDefinitionsFullScreenOptions { /** * (Highstock) A predefined background symbol for the button. */ symbol?: string; } export interface StockToolsGuiDefinitionsIndicatorsOptions { /** * (Highstock) A predefined background symbol for the button. */ symbol?: string; } export interface StockToolsGuiDefinitionsLinesArrowLineOptions { /** * (Highstock) A predefined background symbol for the button. */ symbol?: string; } export interface StockToolsGuiDefinitionsLinesArrowRayOptions { /** * (Highstock) A predefined background symbol for the button. */ symbol?: string; } export interface StockToolsGuiDefinitionsLinesArrowSegmentOptions { /** * (Highstock) A predefined background symbol for the button. */ symbol?: string; } export interface StockToolsGuiDefinitionsLinesHorizontalLineOptions { /** * (Highstock) A predefined background symbol for the button. */ symbol?: string; } export interface StockToolsGuiDefinitionsLinesLineOptions { /** * (Highstock) A predefined background symbol for the button. */ symbol?: string; } export interface StockToolsGuiDefinitionsLinesOptions { arrowLine?: StockToolsGuiDefinitionsLinesArrowLineOptions; arrowRay?: StockToolsGuiDefinitionsLinesArrowRayOptions; arrowSegment?: StockToolsGuiDefinitionsLinesArrowSegmentOptions; horizontalLine?: StockToolsGuiDefinitionsLinesHorizontalLineOptions; /** * (Highstock) A collection of strings pointing to config options for the * items. */ items?: any[]; line?: StockToolsGuiDefinitionsLinesLineOptions; ray?: StockToolsGuiDefinitionsLinesRayOptions; segment?: StockToolsGuiDefinitionsLinesSegmentOptions; verticalLine?: StockToolsGuiDefinitionsLinesVerticalLineOptions; } export interface StockToolsGuiDefinitionsLinesRayOptions { /** * (Highstock) A predefined background symbol for the button. */ symbol?: string; } export interface StockToolsGuiDefinitionsLinesSegmentOptions { /** * (Highstock) A predefined background symbol for the button. */ symbol?: string; } export interface StockToolsGuiDefinitionsLinesVerticalLineOptions { /** * (Highstock) A predefined background symbol for the button. */ symbol?: string; } export interface StockToolsGuiDefinitionsMeasureMeasureXOptions { /** * (Highstock) A predefined background symbol for the button. */ symbol?: string; } export interface StockToolsGuiDefinitionsMeasureMeasureXYOptions { /** * (Highstock) A predefined background symbol for the button. */ symbol?: string; } export interface StockToolsGuiDefinitionsMeasureMeasureYOptions { /** * (Highstock) A predefined background symbol for the button. */ symbol?: string; } export interface StockToolsGuiDefinitionsMeasureOptions { /** * (Highstock) A collection of strings pointing to config options for the * items. */ items?: any[]; measureX?: StockToolsGuiDefinitionsMeasureMeasureXOptions; measureXY?: StockToolsGuiDefinitionsMeasureMeasureXYOptions; measureY?: StockToolsGuiDefinitionsMeasureMeasureYOptions; } /** * (Highstock) An options object of the buttons definitions. Each name refers to * unique key from buttons array. */ export interface StockToolsGuiDefinitionsOptions { advanced?: StockToolsGuiDefinitionsAdvancedOptions; crookedLines?: StockToolsGuiDefinitionsCrookedLinesOptions; currentPriceIndicator?: StockToolsGuiDefinitionsCurrentPriceIndicatorOptions; flags?: StockToolsGuiDefinitionsFlagsOptions; fullScreen?: StockToolsGuiDefinitionsFullScreenOptions; indicators?: StockToolsGuiDefinitionsIndicatorsOptions; lines?: StockToolsGuiDefinitionsLinesOptions; measure?: StockToolsGuiDefinitionsMeasureOptions; saveChart?: StockToolsGuiDefinitionsSaveChartOptions; separator?: StockToolsGuiDefinitionsSeparatorOptions; simpleShapes?: StockToolsGuiDefinitionsSimpleShapesOptions; toggleAnnotations?: StockToolsGuiDefinitionsToggleAnnotationsOptions; typeChange?: StockToolsGuiDefinitionsTypeChangeOptions; verticalLabels?: StockToolsGuiDefinitionsVerticalLabelsOptions; zoomChange?: StockToolsGuiDefinitionsZoomChangeOptions; } export interface StockToolsGuiDefinitionsSaveChartOptions { /** * (Highstock) A predefined background symbol for the button. */ symbol?: string; } export interface StockToolsGuiDefinitionsSeparatorOptions { /** * (Highstock) A predefined background symbol for the button. */ symbol?: string; } export interface StockToolsGuiDefinitionsSimpleShapesCircleOptions { /** * (Highstock) A predefined background symbol for the button. */ symbol?: string; } export interface StockToolsGuiDefinitionsSimpleShapesLabelOptions { /** * (Highstock) A predefined background symbol for the button. */ symbol?: string; } export interface StockToolsGuiDefinitionsSimpleShapesOptions { circle?: StockToolsGuiDefinitionsSimpleShapesCircleOptions; /** * (Highstock) A collection of strings pointing to config options for the * items. */ items?: any[]; label?: StockToolsGuiDefinitionsSimpleShapesLabelOptions; rectangle?: StockToolsGuiDefinitionsSimpleShapesRectangleOptions; } export interface StockToolsGuiDefinitionsSimpleShapesRectangleOptions { /** * (Highstock) A predefined background symbol for the button. */ symbol?: string; } export interface StockToolsGuiDefinitionsToggleAnnotationsOptions { /** * (Highstock) A predefined background symbol for the button. */ symbol?: string; } export interface StockToolsGuiDefinitionsTypeChangeOptions { /** * (Highstock) A collection of strings pointing to config options for the * items. */ items?: any[]; typeCandlestick?: StockToolsGuiDefinitionsTypeChangeTypeCandlestickOptions; typeLine?: StockToolsGuiDefinitionsTypeChangeTypeLineOptions; typeOHLC?: StockToolsGuiDefinitionsTypeChangeTypeOHLCOptions; } export interface StockToolsGuiDefinitionsTypeChangeTypeCandlestickOptions { /** * (Highstock) A predefined background symbol for the button. */ symbol?: string; } export interface StockToolsGuiDefinitionsTypeChangeTypeLineOptions { /** * (Highstock) A predefined background symbol for the button. */ symbol?: string; } export interface StockToolsGuiDefinitionsTypeChangeTypeOHLCOptions { /** * (Highstock) A predefined background symbol for the button. */ symbol?: string; } export interface StockToolsGuiDefinitionsVerticalLabelsOptions { /** * (Highstock) A collection of strings pointing to config options for the * items. */ items?: any[]; verticalArrow?: StockToolsGuiDefinitionsVerticalLabelsVerticalArrowOptions; verticalCounter?: StockToolsGuiDefinitionsVerticalLabelsVerticalCounterOptions; verticalLabel?: StockToolsGuiDefinitionsVerticalLabelsVerticalLabelOptions; } export interface StockToolsGuiDefinitionsVerticalLabelsVerticalArrowOptions { /** * (Highstock) A predefined background symbol for the button. */ symbol?: string; } export interface StockToolsGuiDefinitionsVerticalLabelsVerticalCounterOptions { /** * (Highstock) A predefined background symbol for the button. */ symbol?: string; } export interface StockToolsGuiDefinitionsVerticalLabelsVerticalLabelOptions { /** * (Highstock) A predefined background symbol for the button. */ symbol?: string; } export interface StockToolsGuiDefinitionsZoomChangeOptions { /** * (Highstock) A collection of strings pointing to config options for the * items. */ items?: any[]; zoomX?: StockToolsGuiDefinitionsZoomChangeZoomXOptions; zoomXY?: StockToolsGuiDefinitionsZoomChangeZoomXYOptions; zoomY?: StockToolsGuiDefinitionsZoomChangeZoomYOptions; } export interface StockToolsGuiDefinitionsZoomChangeZoomXOptions { /** * (Highstock) A predefined background symbol for the button. */ symbol?: string; } export interface StockToolsGuiDefinitionsZoomChangeZoomXYOptions { /** * (Highstock) A predefined background symbol for the button. */ symbol?: string; } export interface StockToolsGuiDefinitionsZoomChangeZoomYOptions { /** * (Highstock) A predefined background symbol for the button. */ symbol?: string; } /** * (Highstock) Definitions of buttons in Stock Tools GUI. */ export interface StockToolsGuiOptions { /** * (Highstock) A collection of strings pointing to config options for the * toolbar items. Each name refers to unique key from definitions object. */ buttons?: any[]; /** * (Highstock) A CSS class name to apply to the stocktools' div, allowing * unique CSS styling for each chart. */ className?: string; /** * (Highstock) An options object of the buttons definitions. Each name * refers to unique key from buttons array. */ definitions?: (object|StockToolsGuiDefinitionsOptions); /** * (Highstock) Enable or disable the stockTools gui. */ enabled?: boolean; /** * (Highstock) Path where Highcharts will look for icons. Change this to use * icons from a different server. */ iconsURL?: string; /** * (Highstock) A CSS class name to apply to the container of buttons, * allowing unique CSS styling for each chart. */ toolbarClassName?: string; } /** * (Highstock) Configure the stockTools gui strings in the chart. Requires the * [stockTools module]() to be loaded. For a description of the module and * information on its features, see [Highcharts StockTools](). */ export interface StockToolsOptions { /** * (Highstock) Definitions of buttons in Stock Tools GUI. */ gui?: StockToolsGuiOptions; } /** * The chart subtitle. The subtitle has an `update` method that allows modifying * the options directly or indirectly via `chart.update`. */ export interface SubtitleObject extends SVGElement { /** * Modify options for the subtitle. * * @param subtitleOptions * Options to modify. * * @param redraw * Whether to redraw the chart after the subtitle is altered. If * doing more operations on the chart, it is a good idea to set * redraw to false and call Chart#redraw after. */ update(subtitleOptions: SubtitleOptions, redraw?: boolean): void; } /** * (Highcharts, Highstock, Highmaps, Gantt) The chart's subtitle. This can be * used both to display a subtitle below the main title, and to display random * text anywhere in the chart. The subtitle can be updated after chart * initialization through the `Chart.setTitle` method. */ export interface SubtitleOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) The horizontal alignment of the * subtitle. Can be one of "left", "center" and "right". */ align?: AlignValue; /** * (Highcharts, Highstock, Highmaps, Gantt) When the subtitle is floating, * the plot area will not move to make space for it. */ floating?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) CSS styles for the title. * * In styled mode, the subtitle style is given in the `.highcharts-subtitle` * class. */ style?: CSSObject; /** * (Highcharts, Highstock, Highmaps, Gantt) The subtitle of the chart. */ text?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to use HTML to render * the text. */ useHTML?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) The vertical alignment of the * title. Can be one of `"top"`, `"middle"` and `"bottom"`. When a value is * given, the title behaves as floating. */ verticalAlign?: VerticalAlignValue; /** * (Highcharts, Highstock, Highmaps, Gantt) Adjustment made to the subtitle * width, normally to reserve space for the exporting burger menu. */ widthAdjust?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The x position of the subtitle * relative to the alignment within `chart.spacingLeft` and * `chart.spacingRight`. */ x?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The y position of the subtitle * relative to the alignment within `chart.spacingTop` and * `chart.spacingBottom`. By default the subtitle is laid out below the * title unless the title is floating. */ y?: number; } /** * An object of key-value pairs for SVG attributes. Attributes in Highcharts * elements for the most parts correspond to SVG, but some are specific to * Highcharts, like `zIndex`, `rotation`, `rotationOriginX`, `rotationOriginY`, * `translateX`, `translateY`, `scaleX` and `scaleY`. SVG attributes containing * a hyphen are _not_ camel-cased, they should be quoted to preserve the hyphen. */ export interface SVGAttributes { [key: string]: any; d?: (string|SVGPathArray); fill?: ColorString; inverted?: boolean; matrix?: Array<number>; rotation?: string; rotationOriginX?: number; rotationOriginY?: number; scaleX?: number; scaleY?: number; stroke?: ColorString; style?: (string|CSSObject); translateX?: number; translateY?: number; zIndex?: number; } /** * Serialized form of an SVG definition, including children. Some key property * names are reserved: tagName, textContent, and children. */ export interface SVGDefinitionObject { [key: string]: (number|string|Array<SVGDefinitionObject>|undefined); children?: Array<SVGDefinitionObject>; tagName?: string; textContent?: string; } /** * An extendable collection of functions for defining symbol paths. Symbols are * used internally for point markers, button and label borders and backgrounds, * or custom shapes. Extendable by adding to SVGRenderer#symbols. */ export interface SymbolDictionary { [key: string]: (Function|undefined); arc?: Function; callout?: Function; circle?: Function; diamond?: Function; square?: Function; triangle?: Function; } /** * Additional options, depending on the actual symbol drawn. */ export interface SymbolOptionsObject { /** * The anchor X position for the `callout` symbol. This is where the chevron * points to. */ anchorX?: number; /** * The anchor Y position for the `callout` symbol. This is where the chevron * points to. */ anchorY?: number; /** * The end angle of an `arc` symbol. */ end?: number; /** * Whether to draw `arc` symbol open or closed. */ open?: boolean; /** * The radius of an `arc` symbol, or the border radius for the `callout` * symbol. */ r?: number; /** * The start angle of an `arc` symbol. */ start?: number; } /** * (Highcharts, Highstock, Highmaps, Gantt) Time options that can apply globally * or to individual charts. These settings affect how `datetime` axes are laid * out, how tooltips are formatted, how series pointIntervalUnit works and how * the Highstock range selector handles time. * * The common use case is that all charts in the same Highcharts object share * the same time settings, in which case the global settings are set using * `setOptions`.(see online documentation for example) * * Since v6.0.5, the time options were moved from the `global` obect to the * `time` object, and time options can be set on each individual chart. */ export interface TimeOptions { /** * (Highcharts, Highstock, Gantt) A custom `Date` class for advanced date * handling. For example, JDate can be hooked in to handle Jalali dates. */ Date?: any; /** * (Highcharts, Highstock, Gantt) A callback to return the time zone offset * for a given datetime. It takes the timestamp in terms of milliseconds * since January 1 1970, and returns the timezone offset in minutes. This * provides a hook for drawing time based charts in specific time zones * using their local DST crossover dates, with the help of external * libraries. */ getTimezoneOffset?: Function; /** * (Highcharts, Highstock, Gantt) Requires moment.js. If the timezone option * is specified, it creates a default getTimezoneOffset function that looks * up the specified timezone in moment.js. If moment.js is not included, * this throws a Highcharts error in the console, but does not crash the * chart. */ timezone?: string; /** * (Highcharts, Highstock, Gantt) The timezone offset in minutes. Positive * values are west, negative values are east of UTC, as in the ECMAScript * getTimezoneOffset method. Use this to display UTC based data in a * predefined time zone. */ timezoneOffset?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to use UTC time for axis * scaling, tickmark placement and time display in `Highcharts.dateFormat`. * Advantages of using UTC is that the time displays equally regardless of * the user agent's time zone settings. Local time can be used when the data * is loaded in real time or when correct Daylight Saving Time transitions * are required. */ useUTC?: boolean; } /** * Additonal time tick information. */ export interface TimeTicksInfoObject extends NormalizedIntervalObject { higherRanks: Array<string>; totalRange: number; } /** * Time ticks. */ export interface TimeTicksObject extends Array<number> { info: TimeTicksInfoObject; } /** * The chart title. The title has an `update` method that allows modifying the * options directly or indirectly via `chart.update`. */ export interface TitleObject extends SVGElement { /** * Modify options for the title. * * @param titleOptions * Options to modify. * * @param redraw * Whether to redraw the chart after the title is altered. If doing * more operations on the chart, it is a good idea to set redraw to * false and call Chart#redraw after. */ update(titleOptions: TitleOptions, redraw?: boolean): void; } /** * (Highcharts, Highstock, Highmaps, Gantt) The chart's main title. */ export interface TitleOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) The horizontal alignment of the * title. Can be one of "left", "center" and "right". */ align?: AlignValue; /** * (Highcharts, Highstock, Highmaps, Gantt) When the title is floating, the * plot area will not move to make space for it. */ floating?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) The margin between the title and * the plot area, or if a subtitle is present, the margin between the * subtitle and the plot area. */ margin?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) CSS styles for the title. Use * this for font styling, but use `align`, `x` and `y` for text alignment. * * In styled mode, the title style is given in the `.highcharts-title` * class. */ style?: CSSObject; /** * (Highcharts, Highstock, Highmaps, Gantt) The title of the chart. To * disable the title, set the `text` to `undefined`. */ text?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to use HTML to render * the text. */ useHTML?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) The vertical alignment of the * title. Can be one of `"top"`, `"middle"` and `"bottom"`. When a value is * given, the title behaves as if floating were `true`. */ verticalAlign?: VerticalAlignValue; /** * (Highcharts, Highstock, Highmaps, Gantt) Adjustment made to the title * width, normally to reserve space for the exporting burger menu. */ widthAdjust?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The x position of the title * relative to the alignment within `chart.spacingLeft` and * `chart.spacingRight`. */ x?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The y position of the title * relative to the alignment within chart.spacingTop and * chart.spacingBottom. By default it depends on the font size. */ y?: number; } /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date format * in the tooltip's header will by default be guessed based on the closest data * points. This member gives the default string representations used for each * unit. For an overview of the replacement codes, see dateFormat. */ export interface TooltipDateTimeLabelFormatsOptions { day?: string; hour?: string; millisecond?: string; minute?: string; month?: string; second?: string; week?: string; year?: string; } export interface TooltipFormatterContextObject { color: ColorString; colorIndex?: number; key: number; percentage?: number; point: Point; points?: Array<TooltipFormatterContextObject>; series: Series; total?: number; x: number; y: number; } /** * (Highcharts, Highstock, Highmaps, Gantt) Options for the tooltip that appears * when the user hovers over a series or point. */ export interface TooltipOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Enable or disable animation of * the tooltip. */ animation?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) The background color or gradient * for the tooltip. * * In styled mode, the stroke width is set in the `.highcharts-tooltip-box` * class. */ backgroundColor?: ColorString; /** * (Highcharts, Highstock, Highmaps, Gantt) The color of the tooltip border. * When `undefined`, the border takes the color of the corresponding series * or point. */ borderColor?: ColorString; /** * (Highcharts, Highstock, Highmaps, Gantt) The radius of the rounded border * corners. */ borderRadius?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The pixel width of the tooltip * border. * * In styled mode, the stroke width is set in the `.highcharts-tooltip-box` * class. */ borderWidth?: number; /** * (Highstock) How many decimals to show for the `point.change` value when * the `series.compare` option is set. This is overridable in each series' * tooltip options object. The default is to preserve all decimals. */ changeDecimals?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) Since 4.1, the crosshair * definitions are moved to the Axis object in order for a better separation * from the tooltip. See xAxis.crosshair(see online documentation for * example) */ crosshairs?: any; /** * (Highcharts, Highstock, Gantt) For series on a datetime axes, the date * format in the tooltip's header will by default be guessed based on the * closest data points. This member gives the default string representations * used for each unit. For an overview of the replacement codes, see * dateFormat. */ dateTimeLabelFormats?: (TooltipDateTimeLabelFormatsOptions|Dictionary<string>); /** * (Highcharts, Highstock, Highmaps, Gantt) Enable or disable the tooltip. */ enabled?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether the tooltip should * follow the mouse as it moves across columns, pie slices and other point * types with an extent. By default it behaves this way for pie, polygon, * map, sankey and wordcloud series by override in the `plotOptions` for * those series types. * * For touch moves to behave the same way, followTouchMove must be `true` * also. */ followPointer?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether the tooltip should * update as the finger moves on a touch device. If this is `true` and * chart.panning is set,`followTouchMove` will take over one-finger touches, * so the user needs to use two fingers for zooming and panning. * * Note the difference to followPointer that only defines the _position_ of * the tooltip. If `followPointer` is false in for example a column series, * the tooltip will show above or below the column, but as `followTouchMove` * is true, the tooltip will jump from column to column as the user swipes * across the plot area. */ followTouchMove?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) A string to append to the * tooltip format. */ footerFormat?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Callback function to format the * text of the tooltip from scratch. In case of single or shared tooltips, a * string should be returned. In case of split tooltips, it should return an * array where the first item is the header, and subsequent items are mapped * to the points. Return `false` to disable tooltip for a specific point on * series. * * A subset of HTML is supported. Unless `useHTML` is true, the HTML of the * tooltip is parsed and converted to SVG, therefore this isn't a complete * HTML renderer. The following tags are supported: `<b>`, `<strong>`, * `<i>`, `<em>`, `<br/>`, `<span>`. Spans can be styled with a `style` * attribute, but only text-related CSS that is shared with SVG is handled. * * The available data in the formatter differ a bit depending on whether the * tooltip is shared or split, or belongs to a single point. In a * shared/split tooltip, all properties except `x`, which is common for all * points, are kept in an array, `this.points`. * * Available data are: * * (see online documentation for example) */ formatter?: TooltipFormatterCallbackFunction; /** * (Highcharts, Highstock, Highmaps, Gantt) The HTML of the tooltip header * line. Variables are enclosed by curly brackets. Available variables are * `point.key`, `series.name`, `series.color` and other members from the * `point` and `series` objects. The `point.key` variable contains the * category name, x value or datetime string depending on the type of axis. * For datetime axes, the `point.key` date format can be set using * `tooltip.xDateFormat`. */ headerFormat?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) The name of a symbol to use for * the border around the tooltip header. Applies only when tooltip.split is * enabled. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ headerShape?: OptionsHeaderShapeValue; /** * (Highcharts, Highstock, Highmaps, Gantt) The number of milliseconds to * wait until the tooltip is hidden when mouse out from a point or chart. */ hideDelay?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The HTML of the null point's * line in the tooltip. Works analogously to pointFormat. */ nullFormat?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Callback function to format the * text of the tooltip for visible null points. Works analogously to * formatter. */ nullFormatter?: TooltipFormatterCallbackFunction; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to allow the tooltip to * render outside the chart's SVG element box. By default (`false`), the * tooltip is rendered within the chart's SVG element, which results in the * tooltip being aligned inside the chart area. For small charts, this may * result in clipping or overlapping. When `true`, a separate SVG element is * created and overlaid on the page, allowing the tooltip to be aligned * inside the page itself. */ outside?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Padding inside the tooltip, in * pixels. */ padding?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The HTML of the point's line in * the tooltip. Variables are enclosed by curly brackets. Available * variables are point.x, point.y, series. name and series.color and other * properties on the same form. Furthermore, `point.y` can be extended by * the `tooltip.valuePrefix` and `tooltip.valueSuffix` variables. This can * also be overridden for each series, which makes it a good hook for * displaying units. * * In styled mode, the dot is colored by a class name rather than the point * color. */ pointFormat?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) A callback function for * formatting the HTML output for a single point in the tooltip. Like the * `pointFormat` string, but with more flexibility. */ pointFormatter?: FormatterCallbackFunction<Point>; /** * (Highcharts, Highstock, Highmaps, Gantt) A callback function to place the * tooltip in a default position. The callback receives three parameters: * `labelWidth`, `labelHeight` and `point`, where point contains values for * `plotX` and `plotY` telling where the reference point is in the plot * area. Add `chart.plotLeft` and `chart.plotTop` to get the full * coordinates. * * Since v7, when tooltip.split option is enabled, positioner is called for * each of the boxes separately, including xAxis header. xAxis header is not * a point, instead `point` argument contains info: `{ plotX: Number, plotY: * Number, isHeader: Boolean }` * * The return should be an object containing x and y values, for example `{ * x: 100, y: 100 }`. */ positioner?: TooltipPositionerCallbackFunction; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to apply a drop shadow * to the tooltip. */ shadow?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) The name of a symbol to use for * the border around the tooltip. Can be one of: `"callout"`, `"circle"`, or * `"square"`. When tooltip.split option is enabled, shape is applied to all * boxes except header, which is controlled by tooltip.headerShape. * * Custom callbacks for symbol path generation can also be added to * `Highcharts.SVGRenderer.prototype.symbols` the same way as for * series.marker.symbol. */ shape?: TooltipShapeValue; /** * (Highcharts, Highstock) When the tooltip is shared, the entire plot area * will capture mouse movement or touch events. Tooltip texts for series * types with ordered data (not pie, scatter, flags etc) will be shown in a * single bubble. This is recommended for single series charts and for * tablet/mobile optimized charts. * * See also tooltip.split, that is better suited for charts with many * series, especially line-type series. The `tooltip.split` option takes * precedence over `tooltip.shared`. */ shared?: boolean; /** * (Highcharts, Highstock) Proximity snap for graphs or single points. It * defaults to 10 for mouse-powered devices and 25 for touch devices. * * Note that in most cases the whole plot area captures the mouse movement, * and in these cases `tooltip.snap` doesn't make sense. This applies when * stickyTracking is `true` (default) and when the tooltip is shared or * split. */ snap?: number; /** * (Highcharts, Highstock) Split the tooltip into one label per series, with * the header close to the axis. This is recommended over shared tooltips * for charts with multiple line series, generally making them easier to * read. This option takes precedence over `tooltip.shared`. */ split?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) CSS styles for the tooltip. The * tooltip can also be styled through the CSS class `.highcharts-tooltip`. * * Note that the default `pointerEvents` style makes the tooltip ignore * mouse events, so in order to use clickable tooltips, this value must be * set to `auto`. */ style?: CSSObject; /** * (Highcharts, Highstock, Highmaps, Gantt) Use HTML to render the contents * of the tooltip instead of SVG. Using HTML allows advanced formatting like * tables and images in the tooltip. It is also recommended for rtl * languages as it works around rtl bugs in early Firefox. */ useHTML?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) How many decimals to show in * each series' y value. This is overridable in each series' tooltip options * object. The default is to preserve all decimals. */ valueDecimals?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) A string to prepend to each * series' y value. Overridable in each series' tooltip options object. */ valuePrefix?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) A string to append to each * series' y value. Overridable in each series' tooltip options object. */ valueSuffix?: string; /** * (Highcharts, Highstock, Gantt) The format for the date in the tooltip * header if the X axis is a datetime axis. The default is a best guess * based on the smallest distance between points in the chart. */ xDateFormat?: string; } /** * Point information for positioning a tooltip. */ export interface TooltipPositionerPointObject { /** * If `tooltip.split` option is enabled and positioner is called for each of * the boxes separately, this property indicates the call on the xAxis * header, which is not a point itself. */ isHeader: boolean; negative: boolean; /** * The reference point relative to the plot area. Add chart.plotLeft to get * the full coordinates. */ plotX: number; /** * The reference point relative to the plot area. Add chart.plotTop to get * the full coordinates. */ plotY: number; } /** * (Highcharts, Highstock, Highmaps, Gantt) Accessibility options for an axis. * Requires the accessibility module. */ export interface XAxisAccessibilityOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Description for an axis to * expose to screen reader users. */ description?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Enable axis accessibility * features, including axis information in the screen reader information * region. If this is disabled on the xAxis, the x values are not exposed to * screen readers for the individual data points by default. */ enabled?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Range description for an axis. * Overrides the default range description. Set to empty to disable range * description for this axis. */ rangeDescription?: string; } /** * (Highcharts, Highstock, Gantt) An array defining breaks in the axis, the * sections defined will be left out and all the points shifted closer to each * other. */ export interface XAxisBreaksOptions { /** * (Highcharts, Highstock, Gantt) A number indicating how much space should * be left between the start and the end of the break. The break size is * given in axis units, so for instance on a `datetime` axis, a break size * of 3600000 would indicate the equivalent of an hour. */ breakSize?: number; /** * (Highcharts, Highstock, Gantt) The point where the break starts. */ from?: number; /** * (Highcharts, Highstock, Gantt) Defines an interval after which the break * appears again. By default the breaks do not repeat. */ repeat?: number; /** * (Highcharts, Highstock, Gantt) The point where the break ends. */ to?: number; } /** * (Highstock) A label on the axis next to the crosshair. * * In styled mode, the label is styled with the `.highcharts-crosshair-label` * class. */ export interface XAxisCrosshairLabelOptions { /** * (Highstock) Alignment of the label compared to the axis. Defaults to * `"left"` for right-side axes, `"right"` for left-side axes and `"center"` * for horizontal axes. */ align?: AlignValue; /** * (Highstock) The background color for the label. Defaults to the related * series color, or `#666666` if that is not available. */ backgroundColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The border color for the crosshair label */ borderColor?: ColorString; /** * (Highstock) The border corner radius of the crosshair label. */ borderRadius?: number; /** * (Highstock) The border width for the crosshair label. */ borderWidth?: number; /** * (Highstock) A format string for the crosshair label. Defaults to * `{value}` for numeric axes and `{value:%b %d, %Y}` for datetime axes. */ format?: string; /** * (Highstock) Formatter function for the label text. */ formatter?: XAxisCrosshairLabelFormatterCallbackFunction; /** * (Highstock) Padding inside the crosshair label. */ padding?: number; /** * (Highstock) The shape to use for the label box. */ shape?: string; /** * (Highstock) Text styles for the crosshair label. */ style?: CSSObject; } /** * (Highcharts, Highstock, Highmaps, Gantt) Configure a crosshair that follows * either the mouse pointer or the hovered point. * * In styled mode, the crosshairs are styled in the `.highcharts-crosshair`, * `.highcharts-crosshair-thin` or `.highcharts-xaxis-category` classes. */ export interface XAxisCrosshairOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) A class name for the crosshair, * especially as a hook for styling. */ className?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) The color of the crosshair. * Defaults to `#cccccc` for numeric and datetime axes, and * `rgba(204,214,235,0.25)` for category axes, where the crosshair by * default highlights the whole category. */ color?: ColorString; /** * (Highcharts, Highstock, Highmaps, Gantt) The dash style for the * crosshair. See series.dashStyle for possible values. */ dashStyle?: DashStyleValue; /** * (Highstock) A label on the axis next to the crosshair. * * In styled mode, the label is styled with the * `.highcharts-crosshair-label` class. */ label?: XAxisCrosshairLabelOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether the crosshair should * snap to the point or follow the pointer independent of points. */ snap?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) The pixel width of the * crosshair. Defaults to 1 for numeric or datetime axes, and for one * category width for category axes. */ width?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The Z index of the crosshair. * Higher Z indices allow drawing the crosshair on top of the series or * behind the grid lines. */ zIndex?: number; } /** * (Gantt) Text labels for the plot bands */ export interface XAxisCurrentDateIndicatorLabelOptions { /** * (Gantt) Horizontal alignment of the label. Can be one of "left", "center" * or "right". */ align?: AlignValue; /** * (Gantt) Rotation of the text label in degrees. Defaults to 0 for * horizontal plot lines and 90 for vertical lines. */ rotation?: number; /** * (Gantt) CSS styles for the text label. * * In styled mode, the labels are styled by the * `.highcharts-plot-line-label` class. */ style?: CSSObject; /** * (Gantt) The text itself. A subset of HTML is supported. */ text?: string; /** * (Gantt) The text alignment for the label. While `align` determines where * the texts anchor point is placed within the plot band, `textAlign` * determines how the text is aligned against its anchor point. Possible * values are "left", "center" and "right". Defaults to the same as the * `align` option. */ textAlign?: AlignValue; /** * (Gantt) Whether to use HTML to render the labels. */ useHTML?: boolean; /** * (Gantt) Vertical alignment of the label relative to the plot line. Can be * one of "top", "middle" or "bottom". */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Horizontal position relative the alignment. Default varies by * orientation. */ x?: number; /** * (Gantt) Vertical position of the text baseline relative to the alignment. * Default varies by orientation. */ y?: number; } /** * (Gantt) Show an indicator on the axis for the current date and time. Can be a * boolean or a configuration object similar to xAxis.plotLines. */ export interface XAxisCurrentDateIndicatorOptions { /** * (Gantt) A custom class name, in addition to the default * `highcharts-plot-line`, to apply to each individual line. */ className?: string; /** * (Gantt) The color of the line. */ color?: ColorString; /** * (Gantt) The dashing or dot style for the plot line. For possible values * see this overview. */ dashStyle?: DashStyleValue; /** * (Gantt) An object defining mouse events for the plot line. Supported * properties are `click`, `mouseover`, `mouseout`, `mousemove`. */ events?: any; /** * (Gantt) An id used for identifying the plot line in Axis.removePlotLine. */ id?: string; /** * (Gantt) Text labels for the plot bands */ label?: XAxisCurrentDateIndicatorLabelOptions; /** * (Gantt) The width or thickness of the plot line. */ width?: number; /** * (Gantt) The z index of the plot line within the chart. */ zIndex?: number; } export interface XAxisDateTimeLabelFormatsDayOptions { main?: string; } export interface XAxisDateTimeLabelFormatsHourOptions { main?: string; range?: boolean; } export interface XAxisDateTimeLabelFormatsMillisecondOptions { main?: string; range?: boolean; } export interface XAxisDateTimeLabelFormatsMinuteOptions { main?: string; range?: boolean; } export interface XAxisDateTimeLabelFormatsMonthOptions { main?: string; } /** * (Highcharts, Highstock, Gantt) For a datetime axis, the scale will * automatically adjust to the appropriate unit. This member gives the default * string representations used for each unit. For intermediate values, different * units may be used, for example the `day` unit can be used on midnight and * `hour` unit be used for intermediate values on the same axis. For an overview * of the replacement codes, see dateFormat. Defaults to: * * (see online documentation for example) */ export interface XAxisDateTimeLabelFormatsOptions { day?: XAxisDateTimeLabelFormatsDayOptions; hour?: XAxisDateTimeLabelFormatsHourOptions; millisecond?: XAxisDateTimeLabelFormatsMillisecondOptions; minute?: XAxisDateTimeLabelFormatsMinuteOptions; month?: XAxisDateTimeLabelFormatsMonthOptions; second?: XAxisDateTimeLabelFormatsSecondOptions; week?: XAxisDateTimeLabelFormatsWeekOptions; year?: XAxisDateTimeLabelFormatsYearOptions; } export interface XAxisDateTimeLabelFormatsSecondOptions { main?: string; range?: boolean; } export interface XAxisDateTimeLabelFormatsWeekOptions { main?: string; } export interface XAxisDateTimeLabelFormatsYearOptions { main?: string; } /** * (Highcharts, Highstock, Highmaps, Gantt) Event handlers for the axis. */ export interface XAxisEventsOptions { /** * (Highcharts, Gantt) An event fired after the breaks have rendered. */ afterBreaks?: AxisEventCallbackFunction; /** * (Highcharts, Highstock, Highmaps, Gantt) As opposed to the `setExtremes` * event, this event fires after the final min and max values are computed * and corrected for `minRange`. * * Fires when the minimum and maximum is set for the axis, either by calling * the `.setExtremes()` method or by selecting an area in the chart. One * parameter, `event`, is passed to the function, containing common event * information. * * The new user set minimum and maximum values can be found by `event.min` * and `event.max`. These reflect the axis minimum and maximum in axis * values. The actual data extremes are found in `event.dataMin` and * `event.dataMax`. */ afterSetExtremes?: AxisSetExtremesEventCallbackFunction; /** * (Highcharts, Gantt) An event fired when a break from this axis occurs on * a point. */ pointBreak?: AxisPointBreakEventCallbackFunction; /** * (Highcharts, Highstock, Gantt) An event fired when a point falls inside a * break from this axis. */ pointInBreak?: AxisPointBreakEventCallbackFunction; /** * (Highcharts, Highstock, Highmaps, Gantt) Fires when the minimum and * maximum is set for the axis, either by calling the `.setExtremes()` * method or by selecting an area in the chart. One parameter, `event`, is * passed to the function, containing common event information. * * The new user set minimum and maximum values can be found by `event.min` * and `event.max`. These reflect the axis minimum and maximum in data * values. When an axis is zoomed all the way out from the "Reset zoom" * button, `event.min` and `event.max` are null, and the new extremes are * set based on `this.dataMin` and `this.dataMax`. */ setExtremes?: AxisSetExtremesEventCallbackFunction; } /** * (Gantt) Set grid options for the axis labels. Requires Highcharts Gantt. */ export interface XAxisGridOptions { /** * (Gantt) Set border color for the label grid lines. */ borderColor?: ColorString; /** * (Gantt) Set border width of the label grid lines. */ borderWidth?: number; /** * (Gantt) Set cell height for grid axis labels. By default this is * calculated from font size. */ cellHeight?: number; /** * (Gantt) Set specific options for each column (or row for horizontal axes) * in the grid. Each extra column/row is its own axis, and the axis options * can be set here. */ columns?: Array<XAxisOptions>; /** * (Gantt) Enable grid on the axis labels. Defaults to true for Gantt * charts. */ enabled?: boolean; } /** * (Highcharts, Highstock, Highmaps, Gantt) The axis labels show the number or * category for each tick. */ export interface XAxisLabelsOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) What part of the string the * given position is anchored to. If `left`, the left side of the string is * at the axis position. Can be one of `"left"`, `"center"` or `"right"`. * Defaults to an intelligent guess based on which side of the chart the * axis is on and the rotation of the label. */ align?: AlignValue; /** * (Highcharts, Highstock, Gantt) For horizontal axes, the allowed degrees * of label rotation to prevent overlapping labels. If there is enough * space, labels are not rotated. As the chart gets narrower, it will start * rotating the labels -45 degrees, then remove every second label and try * again with rotations 0 and -45 etc. Set it to `false` to disable * rotation, which will cause the labels to word-wrap if possible. */ autoRotation?: (false|Array<number>); /** * (Highcharts, Gantt) When each category width is more than this many * pixels, we don't apply auto rotation. Instead, we lay out the axis label * with word wrap. A lower limit makes sense when the label contains * multiple short words that don't extend the available horizontal space for * each label. */ autoRotationLimit?: number; /** * (Highcharts, Gantt) Polar charts only. The label's pixel distance from * the perimeter of the plot area. */ distance?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) Enable or disable the axis * labels. */ enabled?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) A format string for the axis * label. */ format?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Callback JavaScript function to * format the label. The value is given by `this.value`. Additional * properties for `this` are `axis`, `chart`, `isFirst` and `isLast`. The * value of the default label formatter can be retrieved by calling * `this.axis.defaultLabelFormatter.call(this)` within the function. * * Defaults to: * * (see online documentation for example) */ formatter?: FormatterCallbackFunction<AxisLabelsFormatterContextObject>; /** * (Gantt) The number of pixels to indent the labels per level in a treegrid * axis. */ indentation?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) Horizontal axis only. When * `staggerLines` is not set, `maxStaggerLines` defines how many lines the * axis is allowed to add to automatically avoid overlapping X labels. Set * to `1` to disable overlap detection. */ maxStaggerLines?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) How to handle overflowing labels * on horizontal axis. If set to `"allow"`, it will not be aligned at all. * By default it `"justify"` labels inside the chart area. If there is room * to move it, it will be aligned to the edge, else it will be removed. */ overflow?: OptionsOverflowValue; /** * (Highcharts, Gantt) The pixel padding for axis labels, to ensure white * space between them. */ padding?: number; /** * (Highcharts) Defines how the labels are be repositioned according to the * 3D chart orientation. * * - `'offset'`: Maintain a fixed horizontal/vertical distance from the tick * marks, despite the chart orientation. This is the backwards compatible * behavior, and causes skewing of X and Z axes. * * - `'chart'`: Preserve 3D position relative to the chart. This looks nice, * but hard to read if the text isn't forward-facing. * * - `'flap'`: Rotated text along the axis to compensate for the chart * orientation. This tries to maintain text as legible as possible on all * orientations. * * - `'ortho'`: Rotated text along the axis direction so that the labels are * orthogonal to the axis. This is very similar to `'flap'`, but prevents * skewing the labels (X and Y scaling are still present). */ position3d?: OptionsPosition3dValue; /** * (Highcharts, Gantt) Whether to reserve space for the labels. By default, * space is reserved for the labels in these cases: * * * On all horizontal axes. * * * On vertical axes if `label.align` is `right` on a left-side axis or * `left` on a right-side axis. * * * On vertical axes if `label.align` is `center`. * * This can be turned off when for example the labels are rendered inside * the plot area instead of outside. */ reserveSpace?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Rotation of the labels in * degrees. */ rotation?: number; /** * (Highcharts) If enabled, the axis labels will skewed to follow the * perspective. * * This will fix overlapping labels and titles, but texts become less * legible due to the distortion. * * The final appearance depends heavily on `labels.position3d`. */ skew3d?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Horizontal axes only. The number * of lines to spread the labels over to make room or tighter labels. */ staggerLines?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) To show only every _n_'th label * on the axis, set the step to _n_. Setting the step to 2 shows every other * label. * * By default, the step is calculated automatically to avoid overlap. To * prevent this, set it to 1\. This usually only happens on a category axis, * and is often a sign that you have chosen the wrong axis type. * * Read more at Axis docs => What axis should I use? */ step?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) CSS styles for the label. Use * `whiteSpace: 'nowrap'` to prevent wrapping of category labels. Use * `textOverflow: 'none'` to prevent ellipsis (dots). * * In styled mode, the labels are styled with the `.highcharts-axis-labels` * class. */ style?: CSSObject; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to use HTML to render * the labels. */ useHTML?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) The x position offset of the * label relative to the tick position on the axis. */ x?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The y position offset of the * label relative to the tick position on the axis. The default makes it * adapt to the font size on bottom axis. */ y?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The Z index for the axis labels. */ zIndex?: number; } /** * (Highcharts, Highstock, Highmaps, Gantt) The X axis or category axis. * Normally this is the horizontal axis, though if the chart is inverted this is * the vertical axis. In case of multiple axes, the xAxis node is an array of * configuration objects. * * See the Axis class for programmatic access to the axis. */ export interface XAxisOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Accessibility options for an * axis. Requires the accessibility module. */ accessibility?: (object|XAxisAccessibilityOptions); /** * (Highcharts, Highstock, Gantt) When using multiple axis, the ticks of two * or more opposite axes will automatically be aligned by adding ticks to * the axis or axes with the least ticks, as if `tickAmount` were specified. * * This can be prevented by setting `alignTicks` to false. If the grid lines * look messy, it's a good idea to hide them for the secondary axis by * setting `gridLineWidth` to 0. * * If `startOnTick` or `endOnTick` in an Axis options are set to false, then * the `alignTicks ` will be disabled for the Axis. * * Disabled for logarithmic axes. */ alignTicks?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to allow decimals in * this axis' ticks. When counting integers, like persons or hits on a web * page, decimals should be avoided in the labels. */ allowDecimals?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) When using an alternate grid * color, a band is painted across the plot area between every other grid * line. */ alternateGridColor?: ColorString; /** * (Highcharts, Highstock, Gantt) An array defining breaks in the axis, the * sections defined will be left out and all the points shifted closer to * each other. */ breaks?: Array<XAxisBreaksOptions>; /** * (Highcharts, Gantt) If categories are present for the xAxis, names are * used instead of numbers for that axis. Since Highcharts 3.0, categories * can also be extracted by giving each point a name and setting axis type * to `category`. However, if you have multiple series, best practice * remains defining the `categories` array. * * Example: * * (see online documentation for example) */ categories?: Array<string>; /** * (Highcharts, Highstock, Gantt) The highest allowed value for * automatically computed axis extremes. */ ceiling?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) A class name that opens for * styling the axis by CSS, especially in Highcharts styled mode. The class * name is applied to group elements for the grid, axis elements and labels. */ className?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Configure a crosshair that * follows either the mouse pointer or the hovered point. * * In styled mode, the crosshairs are styled in the `.highcharts-crosshair`, * `.highcharts-crosshair-thin` or `.highcharts-xaxis-category` classes. */ crosshair?: (boolean|XAxisCrosshairOptions); /** * (Gantt) Show an indicator on the axis for the current date and time. Can * be a boolean or a configuration object similar to xAxis.plotLines. */ currentDateIndicator?: (boolean|XAxisCurrentDateIndicatorOptions); /** * (Highcharts, Highstock, Gantt) For a datetime axis, the scale will * automatically adjust to the appropriate unit. This member gives the * default string representations used for each unit. For intermediate * values, different units may be used, for example the `day` unit can be * used on midnight and `hour` unit be used for intermediate values on the * same axis. For an overview of the replacement codes, see dateFormat. * Defaults to: * * (see online documentation for example) */ dateTimeLabelFormats?: XAxisDateTimeLabelFormatsOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to force the axis to end * on a tick. Use this option with the `maxPadding` option to control the * axis end. */ endOnTick?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Event handlers for the axis. */ events?: XAxisEventsOptions; /** * (Highcharts, Highstock, Gantt) The lowest allowed value for automatically * computed axis extremes. */ floor?: number; /** * (Gantt) Set grid options for the axis labels. Requires Highcharts Gantt. */ grid?: XAxisGridOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) Color of the grid lines * extending the ticks across the plot area. * * In styled mode, the stroke is given in the `.highcharts-grid-line` class. */ gridLineColor?: ColorString; /** * (Highcharts, Highstock, Highmaps, Gantt) The dash or dot style of the * grid lines. For possible values, see this demonstration. */ gridLineDashStyle?: DashStyleValue; /** * (Highcharts, Highstock, Highmaps, Gantt) The width of the grid lines * extending the ticks across the plot area. * * In styled mode, the stroke width is given in the `.highcharts-grid-line` * class. */ gridLineWidth?: number; /** * (Highcharts, Highstock, Gantt) The Z index of the grid lines. */ gridZIndex?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) An id for the axis. This can be * used after render time to get a pointer to the axis object through * `chart.get()`. */ id?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) The axis labels show the number * or category for each tick. */ labels?: XAxisLabelsOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) The color of the line marking * the axis itself. * * In styled mode, the line stroke is given in the `.highcharts-axis-line` * or `.highcharts-xaxis-line` class. */ lineColor?: ColorString; /** * (Highcharts, Highstock, Highmaps, Gantt) The width of the line marking * the axis itself. * * In styled mode, the stroke width is given in the `.highcharts-axis-line` * or `.highcharts-xaxis-line` class. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) Index of another axis that this axis is * linked to. When an axis is linked to a master axis, it will take the same * extremes as the master, but as assigned by min or max or by setExtremes. * It can be used to show additional info, or to ease reading the chart by * duplicating the scales. */ linkedTo?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) If there are multiple axes on * the same side of the chart, the pixel margin between the axes. Defaults * to 0 on vertical axes, 15 on horizontal axes. */ margin?: any; /** * (Highcharts, Highstock, Highmaps, Gantt) The maximum value of the axis. * If `null`, the max value is automatically calculated. * * If the endOnTick option is true, the `max` value might be rounded up. * * If a tickAmount is set, the axis may be extended beyond the set max in * order to reach the given number of ticks. The same may happen in a chart * with multiple axes, determined by chart. alignTicks, where a `tickAmount` * is applied internally. */ max?: (number|null); /** * (Highcharts, Highstock, Highmaps, Gantt) Padding of the max value * relative to the length of the axis. A padding of 0.05 will make a 100px * axis 5px longer. This is useful when you don't want the highest data * value to appear on the edge of the plot area. When the axis' `max` option * is set or a max extreme is set using `axis.setExtremes()`, the maxPadding * will be ignored. */ maxPadding?: number; /** * (Highstock, Gantt) Maximum range which can be set using the navigator's * handles. Opposite of xAxis.minRange. */ maxRange?: number; /** * (Highcharts, Highstock) Deprecated. Use `minRange` instead. */ maxZoom?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The minimum value of the axis. * If `null` the min value is automatically calculated. * * If the startOnTick option is true (default), the `min` value might be * rounded down. * * The automatically calculated minimum value is also affected by floor, * softMin, minPadding, minRange as well as series.threshold and * series.softThreshold. */ min?: (number|null); /** * (Highcharts, Highstock, Highmaps, Gantt) Color of the minor, secondary * grid lines. * * In styled mode, the stroke width is given in the * `.highcharts-minor-grid-line` class. */ minorGridLineColor?: ColorString; /** * (Highcharts, Highstock, Highmaps, Gantt) The dash or dot style of the * minor grid lines. For possible values, see this demonstration. */ minorGridLineDashStyle?: DashStyleValue; /** * (Highcharts, Highstock, Highmaps, Gantt) Width of the minor, secondary * grid lines. * * In styled mode, the stroke width is given in the `.highcharts-grid-line` * class. */ minorGridLineWidth?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) Color for the minor tick marks. */ minorTickColor?: ColorString; /** * (Highcharts, Highstock, Highmaps, Gantt) Specific tick interval in axis * units for the minor ticks. On a linear axis, if `"auto"`, the minor tick * interval is calculated as a fifth of the tickInterval. If `null` or * `undefined`, minor ticks are not shown. * * On logarithmic axes, the unit is the power of the value. For example, * setting the minorTickInterval to 1 puts one tick on each of 0.1, 1, 10, * 100 etc. Setting the minorTickInterval to 0.1 produces 9 ticks between 1 * and 10, 10 and 100 etc. * * If user settings dictate minor ticks to become too dense, they don't make * sense, and will be ignored to prevent performance problems. */ minorTickInterval?: (number|string|null); /** * (Highcharts, Highstock, Highmaps, Gantt) The pixel length of the minor * tick marks. */ minorTickLength?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The position of the minor tick * marks relative to the axis line. Can be one of `inside` and `outside`. */ minorTickPosition?: OptionsMinorTickPositionValue; /** * (Highcharts, Highstock, Highmaps, Gantt) Enable or disable minor ticks. * Unless minorTickInterval is set, the tick interval is calculated as a * fifth of the `tickInterval`. * * On a logarithmic axis, minor ticks are laid out based on a best guess, * attempting to enter approximately 5 minor ticks between each major tick. * * Prior to v6.0.0, ticks were unabled in auto layout by setting * `minorTickInterval` to `"auto"`. */ minorTicks?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) The pixel width of the minor * tick mark. */ minorTickWidth?: number; /** * (Highcharts, Highstock, Gantt) Padding of the min value relative to the * length of the axis. A padding of 0.05 will make a 100px axis 5px longer. * This is useful when you don't want the lowest data value to appear on the * edge of the plot area. When the axis' `min` option is set or a min * extreme is set using `axis.setExtremes()`, the minPadding will be * ignored. */ minPadding?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The minimum range to display on * this axis. The entire axis will not be allowed to span over a smaller * interval than this. For example, for a datetime axis the main unit is * milliseconds. If minRange is set to 3600000, you can't zoom in more than * to one hour. * * The default minRange for the x axis is five times the smallest interval * between any of the data points. * * On a logarithmic axis, the unit for the minimum range is the power. So a * minRange of 1 means that the axis can be zoomed to 10-100, 100-1000, * 1000-10000 etc. * * Note that the `minPadding`, `maxPadding`, `startOnTick` and `endOnTick` * settings also affect how the extremes of the axis are computed. */ minRange?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The minimum tick interval * allowed in axis values. For example on zooming in on an axis with daily * data, this can be used to prevent the axis from showing hours. Defaults * to the closest distance between two points on the axis. */ minTickInterval?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The distance in pixels from the * plot area to the axis line. A positive offset moves the axis with it's * line, labels and ticks away from the plot area. This is typically used * when two or more axes are displayed on the same side of the plot. With * multiple axes the offset is dynamically adjusted to avoid collision, this * can be overridden by setting offset explicitly. */ offset?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to display the axis on * the opposite side of the normal. The normal is on the left side for * vertical axes and bottom for horizontal, so the opposite sides will be * right and top respectively. This is typically used with dual or multiple * axes. */ opposite?: boolean; /** * (Highstock) In an ordinal axis, the points are equally spaced in the * chart regardless of the actual time or x distance between them. This * means that missing data periods (e.g. nights or weekends for a stock * chart) will not take up space in the chart. Having `ordinal: false` will * show any gaps created by the `gapSize` setting proportionate to their * duration. * * In stock charts the X axis is ordinal by default, unless the boost module * is used and at least one of the series' data length exceeds the * boostThreshold. */ ordinal?: boolean; /** * (Highstock) Additional range on the right side of the xAxis. Works * similar to `xAxis.maxPadding`, but value is set in milliseconds. Can be * set for both main `xAxis` and the navigator's `xAxis`. */ overscroll?: number; /** * (Highcharts) Refers to the index in the panes array. Used for circular * gauges and polar charts. When the option is not set then first pane will * be used. */ pane?: number; /** * (Highcharts, Highstock, Gantt) An array of colored bands stretching * across the plot area marking an interval on the axis. * * In styled mode, the plot bands are styled by the `.highcharts-plot-band` * class in addition to the `className` option. */ plotBands?: Array<XAxisPlotBandsOptions>; /** * (Highcharts, Highstock, Gantt) An array of lines stretching across the * plot area, marking a specific value on one of the axes. * * In styled mode, the plot lines are styled by the `.highcharts-plot-line` * class in addition to the `className` option. */ plotLines?: Array<XAxisPlotLinesOptions>; /** * (Highstock) The zoomed range to display when only defining one or none of * `min` or `max`. For example, to show the latest month, a range of one * month can be set. */ range?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to reverse the axis so * that the highest number is closest to the origin. If the chart is * inverted, the x axis is reversed by default. */ reversed?: boolean; /** * (Highcharts, Highstock) This option determines how stacks should be * ordered within a group. For example reversed xAxis also reverses stacks, * so first series comes last in a group. To keep order like for * non-reversed xAxis enable this option. */ reversedStacks?: boolean; /** * (Highstock) An optional scrollbar to display on the X axis in response to * limiting the minimum and maximum of the axis values. * * In styled mode, all the presentational options for the scrollbar are * replaced by the classes `.highcharts-scrollbar-thumb`, * `.highcharts-scrollbar-arrow`, `.highcharts-scrollbar-button`, * `.highcharts-scrollbar-rifles` and `.highcharts-scrollbar-track`. */ scrollbar?: XAxisScrollbarOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to show the axis line * and title when the axis has no data. */ showEmpty?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to show the first tick * label. */ showFirstLabel?: boolean; /** * (Highcharts, Highstock, Gantt) Whether to show the last tick label. * Defaults to `true` on cartesian charts, and `false` on polar charts. */ showLastLabel?: boolean; /** * (Highcharts, Highstock, Gantt) A soft maximum for the axis. If the series * data maximum is less than this, the axis will stay at this maximum, but * if the series data maximum is higher, the axis will flex to show all * data. */ softMax?: number; /** * (Highcharts, Highstock, Gantt) A soft minimum for the axis. If the series * data minimum is greater than this, the axis will stay at this minimum, * but if the series data minimum is lower, the axis will flex to show all * data. */ softMin?: number; /** * (Highcharts, Highstock, Gantt) For datetime axes, this decides where to * put the tick between weeks. 0 = Sunday, 1 = Monday. */ startOfWeek?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to force the axis to * start on a tick. Use this option with the `minPadding` option to control * the axis start. */ startOnTick?: boolean; /** * (Highcharts, Highstock, Gantt) The amount of ticks to draw on the axis. * This opens up for aligning the ticks of multiple charts or panes within a * chart. This option overrides the `tickPixelInterval` option. * * This option only has an effect on linear axes. Datetime, logarithmic or * category axes are not affected. */ tickAmount?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) Color for the main tick marks. * * In styled mode, the stroke is given in the `.highcharts-tick` class. */ tickColor?: ColorString; /** * (Highcharts, Highstock, Highmaps, Gantt) The interval of the tick marks * in axis units. When `undefined`, the tick interval is computed to * approximately follow the tickPixelInterval on linear and datetime axes. * On categorized axes, a `undefined` tickInterval will default to 1, one * category. Note that datetime axes are based on milliseconds, so for * example an interval of one day is expressed as `24 * 3600 * 1000`. * * On logarithmic axes, the tickInterval is based on powers, so a * tickInterval of 1 means one tick on each of 0.1, 1, 10, 100 etc. A * tickInterval of 2 means a tick of 0.1, 10, 1000 etc. A tickInterval of * 0.2 puts a tick on 0.1, 0.2, 0.4, 0.6, 0.8, 1, 2, 4, 6, 8, 10, 20, 40 * etc. * * If the tickInterval is too dense for labels to be drawn, Highcharts may * remove ticks. * * If the chart has multiple axes, the alignTicks option may interfere with * the `tickInterval` setting. */ tickInterval?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The pixel length of the main * tick marks. */ tickLength?: number; /** * (Highcharts, Gantt) For categorized axes only. If `on` the tick mark is * placed in the center of the category, if `between` the tick mark is * placed between categories. The default is `between` if the `tickInterval` * is 1, else `on`. */ tickmarkPlacement?: OptionsTickmarkPlacementValue; /** * (Highcharts, Highstock, Highmaps, Gantt) If tickInterval is `null` this * option sets the approximate pixel interval of the tick marks. Not * applicable to categorized axis. * * The tick interval is also influenced by the minTickInterval option, that, * by default prevents ticks from being denser than the data points. */ tickPixelInterval?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The position of the major tick * marks relative to the axis line. Can be one of `inside` and `outside`. */ tickPosition?: OptionsTickPositionValue; /** * (Highcharts, Highstock, Highmaps, Gantt) A callback function returning * array defining where the ticks are laid out on the axis. This overrides * the default behaviour of tickPixelInterval and tickInterval. The * automatic tick positions are accessible through `this.tickPositions` and * can be modified by the callback. */ tickPositioner?: AxisTickPositionerCallbackFunction; /** * (Highcharts, Highstock, Highmaps, Gantt) An array defining where the * ticks are laid out on the axis. This overrides the default behaviour of * tickPixelInterval and tickInterval. */ tickPositions?: Array<number>; /** * (Highcharts, Highstock, Highmaps, Gantt) The pixel width of the major * tick marks. Defaults to 0 on category axes, otherwise 1. * * In styled mode, the stroke width is given in the `.highcharts-tick` * class. */ tickWidth?: (number|undefined); /** * (Highcharts, Highstock, Highmaps, Gantt) The axis title, showing next to * the axis line. */ title?: XAxisTitleOptions; /** * (Highcharts, Gantt) The type of axis. Can be one of `linear`, * `logarithmic`, `datetime` or `category`. In a datetime axis, the numbers * are given in milliseconds, and tick marks are placed on appropriate * values like full hours or days. In a category axis, the point names of * the chart's series are used for categories, if not a categories array is * defined. */ type?: AxisTypeValue; /** * (Highcharts, Gantt) Applies only when the axis `type` is `category`. When * `uniqueNames` is true, points are placed on the X axis according to their * names. If the same point name is repeated in the same or another series, * the point is placed on the same X position as other points of the same * name. When `uniqueNames` is false, the points are laid out in increasing * X positions regardless of their names, and the X axis category will take * the name of the last point in each position. */ uniqueNames?: boolean; /** * (Highcharts, Highstock, Gantt) Datetime axis only. An array determining * what time intervals the ticks are allowed to fall on. Each array item is * an array where the first value is the time unit and the second value * another array of allowed multiples. Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; /** * (Highcharts, Highstock, Gantt) Whether axis, including axis title, line, * ticks and labels, should be visible. */ visible?: boolean; } /** * (Highcharts, Highstock, Gantt) Text labels for the plot bands */ export interface XAxisPlotBandsLabelOptions { /** * (Highcharts, Highstock, Gantt) Horizontal alignment of the label. Can be * one of "left", "center" or "right". */ align?: AlignValue; /** * (Highcharts, Highstock, Gantt) Rotation of the text label in degrees . */ rotation?: number; /** * (Highcharts, Highstock, Gantt) CSS styles for the text label. * * In styled mode, the labels are styled by the * `.highcharts-plot-band-label` class. */ style?: CSSObject; /** * (Highcharts, Highstock, Gantt) The string text itself. A subset of HTML * is supported. */ text?: string; /** * (Highcharts, Highstock, Gantt) The text alignment for the label. While * `align` determines where the texts anchor point is placed within the plot * band, `textAlign` determines how the text is aligned against its anchor * point. Possible values are "left", "center" and "right". Defaults to the * same as the `align` option. */ textAlign?: AlignValue; /** * (Highcharts, Highstock, Gantt) Whether to use HTML to render the labels. */ useHTML?: boolean; /** * (Highcharts, Highstock, Gantt) Vertical alignment of the label relative * to the plot band. Can be one of "top", "middle" or "bottom". */ verticalAlign?: VerticalAlignValue; /** * (Highcharts, Highstock, Gantt) Horizontal position relative the * alignment. Default varies by orientation. */ x?: number; /** * (Highcharts, Highstock, Gantt) Vertical position of the text baseline * relative to the alignment. Default varies by orientation. */ y?: number; } /** * (Highcharts, Highstock, Gantt) An array of colored bands stretching across * the plot area marking an interval on the axis. * * In styled mode, the plot bands are styled by the `.highcharts-plot-band` * class in addition to the `className` option. */ export interface XAxisPlotBandsOptions { /** * (Highcharts, Highstock, Gantt) Border color for the plot band. Also * requires `borderWidth` to be set. */ borderColor?: ColorString; /** * (Highcharts, Highstock, Gantt) Border width for the plot band. Also * requires `borderColor` to be set. */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) A custom class name, in addition to the * default `highcharts-plot-band`, to apply to each individual band. */ className?: string; /** * (Highcharts, Highstock, Gantt) The color of the plot band. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) An object defining mouse events for the * plot band. Supported properties are `click`, `mouseover`, `mouseout`, * `mousemove`. */ events?: any; /** * (Highcharts, Highstock, Gantt) The start position of the plot band in * axis units. */ from?: number; /** * (Highcharts, Highstock, Gantt) An id used for identifying the plot band * in Axis.removePlotBand. */ id?: string; /** * (Highcharts, Highstock, Gantt) Text labels for the plot bands */ label?: XAxisPlotBandsLabelOptions; /** * (Highcharts, Highstock, Gantt) The end position of the plot band in axis * units. */ to?: number; /** * (Highcharts, Highstock, Gantt) The z index of the plot band within the * chart, relative to other elements. Using the same z index as another * element may give unpredictable results, as the last rendered element will * be on top. Values from 0 to 20 make sense. */ zIndex?: number; } /** * (Highcharts, Highstock, Gantt) Text labels for the plot bands */ export interface XAxisPlotLinesLabelOptions { /** * (Highcharts, Highstock, Gantt) Horizontal alignment of the label. Can be * one of "left", "center" or "right". */ align?: AlignValue; /** * (Highcharts, Highstock, Gantt) Rotation of the text label in degrees. * Defaults to 0 for horizontal plot lines and 90 for vertical lines. */ rotation?: number; /** * (Highcharts, Highstock, Gantt) CSS styles for the text label. * * In styled mode, the labels are styled by the * `.highcharts-plot-line-label` class. */ style?: CSSObject; /** * (Highcharts, Highstock, Gantt) The text itself. A subset of HTML is * supported. */ text?: string; /** * (Highcharts, Highstock, Gantt) The text alignment for the label. While * `align` determines where the texts anchor point is placed within the plot * band, `textAlign` determines how the text is aligned against its anchor * point. Possible values are "left", "center" and "right". Defaults to the * same as the `align` option. */ textAlign?: AlignValue; /** * (Highcharts, Highstock, Gantt) Whether to use HTML to render the labels. */ useHTML?: boolean; /** * (Highcharts, Highstock, Gantt) Vertical alignment of the label relative * to the plot line. Can be one of "top", "middle" or "bottom". */ verticalAlign?: VerticalAlignValue; /** * (Highcharts, Highstock, Gantt) Horizontal position relative the * alignment. Default varies by orientation. */ x?: number; /** * (Highcharts, Highstock, Gantt) Vertical position of the text baseline * relative to the alignment. Default varies by orientation. */ y?: number; } /** * (Highcharts, Highstock, Gantt) An array of lines stretching across the plot * area, marking a specific value on one of the axes. * * In styled mode, the plot lines are styled by the `.highcharts-plot-line` * class in addition to the `className` option. */ export interface XAxisPlotLinesOptions { /** * (Highcharts, Highstock, Gantt) A custom class name, in addition to the * default `highcharts-plot-line`, to apply to each individual line. */ className?: string; /** * (Highcharts, Highstock, Gantt) The color of the line. */ color?: ColorString; /** * (Highcharts, Highstock, Gantt) The dashing or dot style for the plot * line. For possible values see this overview. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock, Gantt) An object defining mouse events for the * plot line. Supported properties are `click`, `mouseover`, `mouseout`, * `mousemove`. */ events?: any; /** * (Highcharts, Highstock, Gantt) An id used for identifying the plot line * in Axis.removePlotLine. */ id?: string; /** * (Highcharts, Highstock, Gantt) Text labels for the plot bands */ label?: XAxisPlotLinesLabelOptions; /** * (Highcharts, Highstock, Gantt) The position of the line in axis units. */ value?: number; /** * (Highcharts, Highstock, Gantt) The width or thickness of the plot line. */ width?: number; /** * (Highcharts, Highstock, Gantt) The z index of the plot line within the * chart. */ zIndex?: number; } /** * (Highstock) An optional scrollbar to display on the X axis in response to * limiting the minimum and maximum of the axis values. * * In styled mode, all the presentational options for the scrollbar are replaced * by the classes `.highcharts-scrollbar-thumb`, `.highcharts-scrollbar-arrow`, * `.highcharts-scrollbar-button`, `.highcharts-scrollbar-rifles` and * `.highcharts-scrollbar-track`. */ export interface XAxisScrollbarOptions { /** * (Highstock) The background color of the scrollbar itself. */ barBackgroundColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the scrollbar's border. */ barBorderColor?: ColorString; /** * (Highstock) The border rounding radius of the bar. */ barBorderRadius?: number; /** * (Highstock) The width of the bar's border. */ barBorderWidth?: number; /** * (Highstock) The color of the small arrow inside the scrollbar buttons. */ buttonArrowColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of scrollbar buttons. */ buttonBackgroundColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the border of the scrollbar buttons. */ buttonBorderColor?: ColorString; /** * (Highstock) The corner radius of the scrollbar buttons. */ buttonBorderRadius?: number; /** * (Highstock) The border width of the scrollbar buttons. */ buttonBorderWidth?: number; /** * (Highstock) Enable or disable the scrollbar. */ enabled?: boolean; /** * (Highstock) The height of the scrollbar. The height also applies to the * width of the scroll arrows so that they are always squares. Defaults to * 20 for touch devices and 14 for mouse devices. */ height?: number; /** * (Highstock) Whether to redraw the main chart as the scrollbar or the * navigator zoomed window is moved. Defaults to `true` for modern browsers * and `false` for legacy IE browsers as well as mobile devices. */ liveRedraw?: boolean; /** * (Highstock) The margin between the scrollbar and its axis when the * scrollbar is applied directly to an axis. */ margin?: number; /** * (Highstock) The minimum width of the scrollbar. */ minWidth?: number; /** * (Highstock) The color of the small rifles in the middle of the scrollbar. */ rifleColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Whether to show or hide the scrollbar when the scrolled * content is zoomed out to it full extent. */ showFull?: boolean; step?: number; /** * (Highstock) The color of the track background. */ trackBackgroundColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the border of the scrollbar track. */ trackBorderColor?: ColorString; /** * (Highstock) The corner radius of the border of the scrollbar track. */ trackBorderRadius?: number; /** * (Highstock) The width of the border of the scrollbar track. */ trackBorderWidth?: number; /** * (Highstock) The z index of the scrollbar group. */ zIndex?: number; } /** * (Highcharts, Highstock, Highmaps, Gantt) The axis title, showing next to the * axis line. */ export interface XAxisTitleOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Alignment of the title relative * to the axis values. Possible values are "low", "middle" or "high". */ align?: AxisTitleAlignValue; /** * (Highcharts) Deprecated. Set the `text` to `null` to disable the title. */ enabled?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) The pixel distance between the * axis labels or line and the title. Defaults to 0 for horizontal axes, 10 * for vertical */ margin?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The distance of the axis title * from the axis line. By default, this distance is computed from the offset * width of the labels, the labels' distance from the axis and the title's * margin. However when the offset option is set, it overrides all this. */ offset?: number; /** * (Highcharts) Defines how the title is repositioned according to the 3D * chart orientation. * * - `'offset'`: Maintain a fixed horizontal/vertical distance from the tick * marks, despite the chart orientation. This is the backwards compatible * behavior, and causes skewing of X and Z axes. * * - `'chart'`: Preserve 3D position relative to the chart. This looks nice, * but hard to read if the text isn't forward-facing. * * - `'flap'`: Rotated text along the axis to compensate for the chart * orientation. This tries to maintain text as legible as possible on all * orientations. * * - `'ortho'`: Rotated text along the axis direction so that the labels are * orthogonal to the axis. This is very similar to `'flap'`, but prevents * skewing the labels (X and Y scaling are still present). * * - `undefined`: Will use the config from `labels.position3d` */ position3d?: ("chart"|"flap"|"offset"|"ortho"|null); /** * (Highcharts, Highstock, Gantt) Whether to reserve space for the title * when laying out the axis. */ reserveSpace?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) The rotation of the text in * degrees. 0 is horizontal, 270 is vertical reading from bottom to top. */ rotation?: number; /** * (Highcharts) If enabled, the axis title will skewed to follow the * perspective. * * This will fix overlapping labels and titles, but texts become less * legible due to the distortion. * * The final appearance depends heavily on `title.position3d`. * * A `null` value will use the config from `labels.skew3d`. */ skew3d?: (boolean|null); /** * (Highcharts, Highstock, Highmaps, Gantt) CSS styles for the title. If the * title text is longer than the axis length, it will wrap to multiple lines * by default. This can be customized by setting `textOverflow: 'ellipsis'`, * by setting a specific `width` or by setting `whiteSpace: 'nowrap'`. * * In styled mode, the stroke width is given in the `.highcharts-axis-title` * class. */ style?: CSSObject; /** * (Highcharts, Highstock, Highmaps, Gantt) The actual text of the axis * title. It can contain basic HTML text markup like <b>, <i> and spans with * style. */ text?: (string|null); /** * (Highcharts, Highstock, Highmaps, Gantt) Alignment of the text, can be * `"left"`, `"right"` or `"center"`. Default alignment depends on the * title.align: * * Horizontal axes: * * - for `align` = `"low"`, `textAlign` is set to `left` * * - for `align` = `"middle"`, `textAlign` is set to `center` * * - for `align` = `"high"`, `textAlign` is set to `right` * * Vertical axes: * * - for `align` = `"low"` and `opposite` = `true`, `textAlign` is set to * `right` * * - for `align` = `"low"` and `opposite` = `false`, `textAlign` is set to * `left` * * - for `align` = `"middle"`, `textAlign` is set to `center` * * - for `align` = `"high"` and `opposite` = `true` `textAlign` is set to * `left` * * - for `align` = `"high"` and `opposite` = `false` `textAlign` is set to * `right` */ textAlign?: AlignValue; /** * (Highcharts, Highstock, Gantt) Whether to use HTML to render the axis * title. */ useHTML?: boolean; /** * (Highcharts, Highstock, Gantt) Horizontal pixel offset of the title * position. */ x?: number; /** * (Highcharts, Highstock, Gantt) Vertical pixel offset of the title * position. */ y?: number; } /** * (Highcharts, Highstock, Highmaps, Gantt) Accessibility options for an axis. * Requires the accessibility module. */ export interface YAxisAccessibilityOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Description for an axis to * expose to screen reader users. */ description?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Enable axis accessibility * features, including axis information in the screen reader information * region. If this is disabled on the xAxis, the x values are not exposed to * screen readers for the individual data points by default. */ enabled?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Range description for an axis. * Overrides the default range description. Set to empty to disable range * description for this axis. */ rangeDescription?: string; } /** * (Highcharts, Highstock, Gantt) An array defining breaks in the axis, the * sections defined will be left out and all the points shifted closer to each * other. */ export interface YAxisBreaksOptions { /** * (Highcharts, Highstock, Gantt) A number indicating how much space should * be left between the start and the end of the break. The break size is * given in axis units, so for instance on a `datetime` axis, a break size * of 3600000 would indicate the equivalent of an hour. */ breakSize?: number; /** * (Highcharts, Highstock, Gantt) The point where the break starts. */ from?: number; /** * (Highcharts, Highstock, Gantt) Defines an interval after which the break * appears again. By default the breaks do not repeat. */ repeat?: number; /** * (Highcharts, Highstock, Gantt) The point where the break ends. */ to?: number; } /** * (Highstock) A label on the axis next to the crosshair. * * In styled mode, the label is styled with the `.highcharts-crosshair-label` * class. */ export interface YAxisCrosshairLabelOptions { /** * (Highstock) Alignment of the label compared to the axis. Defaults to * `"left"` for right-side axes, `"right"` for left-side axes and `"center"` * for horizontal axes. */ align?: AlignValue; /** * (Highstock) The background color for the label. Defaults to the related * series color, or `#666666` if that is not available. */ backgroundColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The border color for the crosshair label */ borderColor?: ColorString; /** * (Highstock) The border corner radius of the crosshair label. */ borderRadius?: number; /** * (Highstock) The border width for the crosshair label. */ borderWidth?: number; /** * (Highstock) A format string for the crosshair label. Defaults to * `{value}` for numeric axes and `{value:%b %d, %Y}` for datetime axes. */ format?: string; /** * (Highstock) Formatter function for the label text. */ formatter?: XAxisCrosshairLabelFormatterCallbackFunction; /** * (Highstock) Padding inside the crosshair label. */ padding?: number; /** * (Highstock) The shape to use for the label box. */ shape?: string; /** * (Highstock) Text styles for the crosshair label. */ style?: CSSObject; } /** * (Highcharts, Highstock, Highmaps, Gantt) Configure a crosshair that follows * either the mouse pointer or the hovered point. * * In styled mode, the crosshairs are styled in the `.highcharts-crosshair`, * `.highcharts-crosshair-thin` or `.highcharts-xaxis-category` classes. */ export interface YAxisCrosshairOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) A class name for the crosshair, * especially as a hook for styling. */ className?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) The color of the crosshair. * Defaults to `#cccccc` for numeric and datetime axes, and * `rgba(204,214,235,0.25)` for category axes, where the crosshair by * default highlights the whole category. */ color?: ColorString; /** * (Highcharts, Highstock, Highmaps, Gantt) The dash style for the * crosshair. See series.dashStyle for possible values. */ dashStyle?: DashStyleValue; /** * (Highstock) A label on the axis next to the crosshair. * * In styled mode, the label is styled with the * `.highcharts-crosshair-label` class. */ label?: YAxisCrosshairLabelOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether the crosshair should * snap to the point or follow the pointer independent of points. */ snap?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) The pixel width of the * crosshair. Defaults to 1 for numeric or datetime axes, and for one * category width for category axes. */ width?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The Z index of the crosshair. * Higher Z indices allow drawing the crosshair on top of the series or * behind the grid lines. */ zIndex?: number; } export interface YAxisDateTimeLabelFormatsDayOptions { main?: string; } export interface YAxisDateTimeLabelFormatsHourOptions { main?: string; range?: boolean; } export interface YAxisDateTimeLabelFormatsMillisecondOptions { main?: string; range?: boolean; } export interface YAxisDateTimeLabelFormatsMinuteOptions { main?: string; range?: boolean; } export interface YAxisDateTimeLabelFormatsMonthOptions { main?: string; } /** * (Highcharts, Highstock, Gantt) For a datetime axis, the scale will * automatically adjust to the appropriate unit. This member gives the default * string representations used for each unit. For intermediate values, different * units may be used, for example the `day` unit can be used on midnight and * `hour` unit be used for intermediate values on the same axis. For an overview * of the replacement codes, see dateFormat. Defaults to: * * (see online documentation for example) */ export interface YAxisDateTimeLabelFormatsOptions { day?: YAxisDateTimeLabelFormatsDayOptions; hour?: YAxisDateTimeLabelFormatsHourOptions; millisecond?: YAxisDateTimeLabelFormatsMillisecondOptions; minute?: YAxisDateTimeLabelFormatsMinuteOptions; month?: YAxisDateTimeLabelFormatsMonthOptions; second?: YAxisDateTimeLabelFormatsSecondOptions; week?: YAxisDateTimeLabelFormatsWeekOptions; year?: YAxisDateTimeLabelFormatsYearOptions; } export interface YAxisDateTimeLabelFormatsSecondOptions { main?: string; range?: boolean; } export interface YAxisDateTimeLabelFormatsWeekOptions { main?: string; } export interface YAxisDateTimeLabelFormatsYearOptions { main?: string; } /** * (Highcharts, Highstock, Highmaps, Gantt) Event handlers for the axis. */ export interface YAxisEventsOptions { /** * (Highcharts, Gantt) An event fired after the breaks have rendered. */ afterBreaks?: AxisEventCallbackFunction; /** * (Highcharts, Highstock, Highmaps, Gantt) As opposed to the `setExtremes` * event, this event fires after the final min and max values are computed * and corrected for `minRange`. * * Fires when the minimum and maximum is set for the axis, either by calling * the `.setExtremes()` method or by selecting an area in the chart. One * parameter, `event`, is passed to the function, containing common event * information. * * The new user set minimum and maximum values can be found by `event.min` * and `event.max`. These reflect the axis minimum and maximum in axis * values. The actual data extremes are found in `event.dataMin` and * `event.dataMax`. */ afterSetExtremes?: AxisSetExtremesEventCallbackFunction; /** * (Highcharts, Gantt) An event fired when a break from this axis occurs on * a point. */ pointBreak?: AxisPointBreakEventCallbackFunction; /** * (Highcharts, Highstock, Gantt) An event fired when a point falls inside a * break from this axis. */ pointInBreak?: AxisPointBreakEventCallbackFunction; /** * (Highcharts, Highstock, Highmaps, Gantt) Fires when the minimum and * maximum is set for the axis, either by calling the `.setExtremes()` * method or by selecting an area in the chart. One parameter, `event`, is * passed to the function, containing common event information. * * The new user set minimum and maximum values can be found by `event.min` * and `event.max`. These reflect the axis minimum and maximum in data * values. When an axis is zoomed all the way out from the "Reset zoom" * button, `event.min` and `event.max` are null, and the new extremes are * set based on `this.dataMin` and `this.dataMax`. */ setExtremes?: AxisSetExtremesEventCallbackFunction; } /** * (Gantt) Set grid options for the axis labels. Requires Highcharts Gantt. */ export interface YAxisGridOptions { /** * (Gantt) Set border color for the label grid lines. */ borderColor?: ColorString; /** * (Gantt) Set border width of the label grid lines. */ borderWidth?: number; /** * (Gantt) Set cell height for grid axis labels. By default this is * calculated from font size. */ cellHeight?: number; /** * (Gantt) Set specific options for each column (or row for horizontal axes) * in the grid. Each extra column/row is its own axis, and the axis options * can be set here. */ columns?: Array<XAxisOptions>; /** * (Gantt) Enable grid on the axis labels. Defaults to true for Gantt * charts. */ enabled?: boolean; } /** * (Gantt) Set options on specific levels in a tree grid axis. Takes precedence * over labels options. */ export interface YAxisLabelsLevelsOptions { /** * (Gantt) Specify the level which the options within this object applies * to. */ level?: number; style?: CSSObject; } /** * (Highcharts, Highstock, Highmaps, Gantt) The axis labels show the number or * category for each tick. */ export interface YAxisLabelsOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) What part of the string the * given position is anchored to. Can be one of `"left"`, `"center"` or * `"right"`. The exact position also depends on the `labels.x` setting. * * Angular gauges and solid gauges defaults to `"center"`. */ align?: AlignValue; /** * (Highcharts, Highstock, Gantt) For horizontal axes, the allowed degrees * of label rotation to prevent overlapping labels. If there is enough * space, labels are not rotated. As the chart gets narrower, it will start * rotating the labels -45 degrees, then remove every second label and try * again with rotations 0 and -45 etc. Set it to `false` to disable * rotation, which will cause the labels to word-wrap if possible. */ autoRotation?: (false|Array<number>); /** * (Highcharts, Gantt) When each category width is more than this many * pixels, we don't apply auto rotation. Instead, we lay out the axis label * with word wrap. A lower limit makes sense when the label contains * multiple short words that don't extend the available horizontal space for * each label. */ autoRotationLimit?: number; /** * (Highcharts) Angular gauges and solid gauges only. The label's pixel * distance from the perimeter of the plot area. */ distance?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) Enable or disable the axis * labels. */ enabled?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) A format string for the axis * label. */ format?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Callback JavaScript function to * format the label. The value is given by `this.value`. Additional * properties for `this` are `axis`, `chart`, `isFirst` and `isLast`. The * value of the default label formatter can be retrieved by calling * `this.axis.defaultLabelFormatter.call(this)` within the function. * * Defaults to: * * (see online documentation for example) */ formatter?: FormatterCallbackFunction<AxisLabelsFormatterContextObject>; /** * (Gantt) The number of pixels to indent the labels per level in a treegrid * axis. */ indentation?: number; /** * (Gantt) Set options on specific levels in a tree grid axis. Takes * precedence over labels options. */ levels?: Array<YAxisLabelsLevelsOptions>; /** * (Highcharts, Highstock, Highmaps, Gantt) Horizontal axis only. When * `staggerLines` is not set, `maxStaggerLines` defines how many lines the * axis is allowed to add to automatically avoid overlapping X labels. Set * to `1` to disable overlap detection. */ maxStaggerLines?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) How to handle overflowing labels * on horizontal axis. If set to `"allow"`, it will not be aligned at all. * By default it `"justify"` labels inside the chart area. If there is room * to move it, it will be aligned to the edge, else it will be removed. */ overflow?: OptionsOverflowValue; /** * (Highcharts, Gantt) The pixel padding for axis labels, to ensure white * space between them. */ padding?: number; /** * (Highcharts) Defines how the labels are be repositioned according to the * 3D chart orientation. * * - `'offset'`: Maintain a fixed horizontal/vertical distance from the tick * marks, despite the chart orientation. This is the backwards compatible * behavior, and causes skewing of X and Z axes. * * - `'chart'`: Preserve 3D position relative to the chart. This looks nice, * but hard to read if the text isn't forward-facing. * * - `'flap'`: Rotated text along the axis to compensate for the chart * orientation. This tries to maintain text as legible as possible on all * orientations. * * - `'ortho'`: Rotated text along the axis direction so that the labels are * orthogonal to the axis. This is very similar to `'flap'`, but prevents * skewing the labels (X and Y scaling are still present). */ position3d?: OptionsPosition3dValue; /** * (Highcharts, Gantt) Whether to reserve space for the labels. By default, * space is reserved for the labels in these cases: * * * On all horizontal axes. * * * On vertical axes if `label.align` is `right` on a left-side axis or * `left` on a right-side axis. * * * On vertical axes if `label.align` is `center`. * * This can be turned off when for example the labels are rendered inside * the plot area instead of outside. */ reserveSpace?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Rotation of the labels in * degrees. */ rotation?: number; /** * (Highcharts) If enabled, the axis labels will skewed to follow the * perspective. * * This will fix overlapping labels and titles, but texts become less * legible due to the distortion. * * The final appearance depends heavily on `labels.position3d`. */ skew3d?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Horizontal axes only. The number * of lines to spread the labels over to make room or tighter labels. */ staggerLines?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) To show only every _n_'th label * on the axis, set the step to _n_. Setting the step to 2 shows every other * label. * * By default, the step is calculated automatically to avoid overlap. To * prevent this, set it to 1\. This usually only happens on a category axis, * and is often a sign that you have chosen the wrong axis type. * * Read more at Axis docs => What axis should I use? */ step?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) CSS styles for the label. Use * `whiteSpace: 'nowrap'` to prevent wrapping of category labels. Use * `textOverflow: 'none'` to prevent ellipsis (dots). * * In styled mode, the labels are styled with the `.highcharts-axis-labels` * class. */ style?: CSSObject; /** * (Gantt) The symbol for the collapse and expand icon in a treegrid. */ symbol?: YAxisLabelsSymbolOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to use HTML to render * the labels. */ useHTML?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) The x position offset of the * label relative to the tick position on the axis. Defaults to -15 for left * axis, 15 for right axis. */ x?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The y position offset of the * label relative to the tick position on the axis. */ y?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The Z index for the axis labels. */ zIndex?: number; } /** * (Gantt) The symbol for the collapse and expand icon in a treegrid. */ export interface YAxisLabelsSymbolOptions { height?: number; padding?: number; /** * (Gantt) The symbol type. Points to a definition function in the * `Highcharts.Renderer.symbols` collection. */ type?: SymbolKeyValue; width?: number; x?: number; y?: number; } /** * (Highcharts, Highstock, Highmaps, Gantt) The Y axis or value axis. Normally * this is the vertical axis, though if the chart is inverted this is the * horizontal axis. In case of multiple axes, the yAxis node is an array of * configuration objects. * * See the Axis object for programmatic access to the axis. */ export interface YAxisOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Accessibility options for an * axis. Requires the accessibility module. */ accessibility?: (object|YAxisAccessibilityOptions); /** * (Highcharts, Highstock, Gantt) When using multiple axis, the ticks of two * or more opposite axes will automatically be aligned by adding ticks to * the axis or axes with the least ticks, as if `tickAmount` were specified. * * This can be prevented by setting `alignTicks` to false. If the grid lines * look messy, it's a good idea to hide them for the secondary axis by * setting `gridLineWidth` to 0. * * If `startOnTick` or `endOnTick` in an Axis options are set to false, then * the `alignTicks ` will be disabled for the Axis. * * Disabled for logarithmic axes. */ alignTicks?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to allow decimals in * this axis' ticks. When counting integers, like persons or hits on a web * page, decimals should be avoided in the labels. */ allowDecimals?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) When using an alternate grid * color, a band is painted across the plot area between every other grid * line. */ alternateGridColor?: ColorString; /** * (Highcharts) In a polar chart, this is the angle of the Y axis in * degrees, where 0 is up and 90 is right. The angle determines the position * of the axis line and the labels, though the coordinate system is * unaffected. */ angle?: number; /** * (Highcharts, Highstock, Gantt) An array defining breaks in the axis, the * sections defined will be left out and all the points shifted closer to * each other. */ breaks?: Array<YAxisBreaksOptions>; /** * (Highcharts, Gantt) If categories are present for the xAxis, names are * used instead of numbers for that axis. Since Highcharts 3.0, categories * can also be extracted by giving each point a name and setting axis type * to `category`. However, if you have multiple series, best practice * remains defining the `categories` array. * * Example: * * (see online documentation for example) */ categories?: Array<string>; /** * (Highcharts, Highstock, Gantt) The highest allowed value for * automatically computed axis extremes. */ ceiling?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) A class name that opens for * styling the axis by CSS, especially in Highcharts styled mode. The class * name is applied to group elements for the grid, axis elements and labels. */ className?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) Configure a crosshair that * follows either the mouse pointer or the hovered point. * * In styled mode, the crosshairs are styled in the `.highcharts-crosshair`, * `.highcharts-crosshair-thin` or `.highcharts-xaxis-category` classes. */ crosshair?: (boolean|YAxisCrosshairOptions); /** * (Highcharts, Highstock, Gantt) For a datetime axis, the scale will * automatically adjust to the appropriate unit. This member gives the * default string representations used for each unit. For intermediate * values, different units may be used, for example the `day` unit can be * used on midnight and `hour` unit be used for intermediate values on the * same axis. For an overview of the replacement codes, see dateFormat. * Defaults to: * * (see online documentation for example) */ dateTimeLabelFormats?: YAxisDateTimeLabelFormatsOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to force the axis to end * on a tick. Use this option with the `maxPadding` option to control the * axis end. */ endOnTick?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Event handlers for the axis. */ events?: YAxisEventsOptions; /** * (Highcharts, Highstock, Gantt) The lowest allowed value for automatically * computed axis extremes. */ floor?: number; /** * (Gantt) Set grid options for the axis labels. Requires Highcharts Gantt. */ grid?: YAxisGridOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) Color of the grid lines * extending the ticks across the plot area. * * In styled mode, the stroke is given in the `.highcharts-grid-line` class. */ gridLineColor?: ColorString; /** * (Highcharts, Highstock, Highmaps, Gantt) The dash or dot style of the * grid lines. For possible values, see this demonstration. */ gridLineDashStyle?: DashStyleValue; /** * (Highcharts) Polar charts only. Whether the grid lines should draw as a * polygon with straight lines between categories, or as circles. Can be * either `circle` or `polygon`. */ gridLineInterpolation?: OptionsGridLineInterpolationValue; /** * (Highcharts, Highstock, Highmaps, Gantt) The width of the grid lines * extending the ticks across the plot area. * * In styled mode, the stroke width is given in the `.highcharts-grid-line` * class. */ gridLineWidth?: number; /** * (Highcharts, Highstock, Gantt) The Z index of the grid lines. */ gridZIndex?: number; /** * (Highstock) The height of the Y axis. If it's a number, it is interpreted * as pixels. * * Since Highstock 2: If it's a percentage string, it is interpreted as * percentages of the total plot height. */ height?: (number|string); /** * (Highcharts, Highstock, Highmaps, Gantt) An id for the axis. This can be * used after render time to get a pointer to the axis object through * `chart.get()`. */ id?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) The axis labels show the number * or category for each tick. */ labels?: YAxisLabelsOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) The color of the line marking * the axis itself. * * In styled mode, the line stroke is given in the `.highcharts-axis-line` * or `.highcharts-xaxis-line` class. */ lineColor?: ColorString; /** * (Highcharts, Highstock, Highmaps, Gantt) The width of the line marking * the axis itself. * * In styled mode, the stroke width is given in the `.highcharts-axis-line` * or `.highcharts-xaxis-line` class. */ lineWidth?: number; /** * (Highcharts, Highstock, Gantt) Index of another axis that this axis is * linked to. When an axis is linked to a master axis, it will take the same * extremes as the master, but as assigned by min or max or by setExtremes. * It can be used to show additional info, or to ease reading the chart by * duplicating the scales. */ linkedTo?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) If there are multiple axes on * the same side of the chart, the pixel margin between the axes. Defaults * to 0 on vertical axes, 15 on horizontal axes. */ margin?: any; /** * (Highcharts, Highstock, Highmaps, Gantt) The maximum value of the axis. * If `null`, the max value is automatically calculated. * * If the endOnTick option is true, the `max` value might be rounded up. * * If a tickAmount is set, the axis may be extended beyond the set max in * order to reach the given number of ticks. The same may happen in a chart * with multiple axes, determined by chart. alignTicks, where a `tickAmount` * is applied internally. */ max?: (number|null); /** * (Highcharts) Solid gauge only. Unless stops are set, the color to * represent the maximum value of the Y axis. */ maxColor?: ColorString; /** * (Highstock) Maximal size of a resizable axis. Could be set as a percent * of plot area or pixel size. * * This feature requires the `drag-panes.js` module. */ maxLength?: (number|string); /** * (Highcharts, Highstock, Gantt) Padding of the max value relative to the * length of the axis. A padding of 0.05 will make a 100px axis 5px longer. * This is useful when you don't want the highest data value to appear on * the edge of the plot area. When the axis' `max` option is set or a max * extreme is set using `axis.setExtremes()`, the maxPadding will be * ignored. */ maxPadding?: number; /** * (Highstock, Gantt) Maximum range which can be set using the navigator's * handles. Opposite of xAxis.minRange. */ maxRange?: number; /** * (Highcharts, Highstock) Deprecated. Use `minRange` instead. */ maxZoom?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The minimum value of the axis. * If `null` the min value is automatically calculated. * * If the startOnTick option is true (default), the `min` value might be * rounded down. * * The automatically calculated minimum value is also affected by floor, * softMin, minPadding, minRange as well as series.threshold and * series.softThreshold. */ min?: (number|null); /** * (Highcharts) Solid gauge only. Unless stops are set, the color to * represent the minimum value of the Y axis. */ minColor?: ColorString; /** * (Highstock) Minimal size of a resizable axis. Could be set as a percent * of plot area or pixel size. * * This feature requires the `drag-panes.js` module. */ minLength?: (number|string); /** * (Highcharts, Highstock, Highmaps, Gantt) Color of the minor, secondary * grid lines. * * In styled mode, the stroke width is given in the * `.highcharts-minor-grid-line` class. */ minorGridLineColor?: ColorString; /** * (Highcharts, Highstock, Highmaps, Gantt) The dash or dot style of the * minor grid lines. For possible values, see this demonstration. */ minorGridLineDashStyle?: DashStyleValue; /** * (Highcharts, Highstock, Highmaps, Gantt) Width of the minor, secondary * grid lines. * * In styled mode, the stroke width is given in the `.highcharts-grid-line` * class. */ minorGridLineWidth?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) Color for the minor tick marks. */ minorTickColor?: ColorString; /** * (Highcharts, Highstock, Highmaps, Gantt) Specific tick interval in axis * units for the minor ticks. On a linear axis, if `"auto"`, the minor tick * interval is calculated as a fifth of the tickInterval. If `null` or * `undefined`, minor ticks are not shown. * * On logarithmic axes, the unit is the power of the value. For example, * setting the minorTickInterval to 1 puts one tick on each of 0.1, 1, 10, * 100 etc. Setting the minorTickInterval to 0.1 produces 9 ticks between 1 * and 10, 10 and 100 etc. * * If user settings dictate minor ticks to become too dense, they don't make * sense, and will be ignored to prevent performance problems. */ minorTickInterval?: (number|string|null); /** * (Highcharts, Highstock, Highmaps, Gantt) The pixel length of the minor * tick marks. */ minorTickLength?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The position of the minor tick * marks relative to the axis line. Can be one of `inside` and `outside`. */ minorTickPosition?: OptionsMinorTickPositionValue; /** * (Highcharts, Highstock, Highmaps, Gantt) Enable or disable minor ticks. * Unless minorTickInterval is set, the tick interval is calculated as a * fifth of the `tickInterval`. * * On a logarithmic axis, minor ticks are laid out based on a best guess, * attempting to enter approximately 5 minor ticks between each major tick. * * Prior to v6.0.0, ticks were unabled in auto layout by setting * `minorTickInterval` to `"auto"`. */ minorTicks?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) The pixel width of the minor * tick mark. */ minorTickWidth?: number; /** * (Highcharts, Highstock, Gantt) Padding of the min value relative to the * length of the axis. A padding of 0.05 will make a 100px axis 5px longer. * This is useful when you don't want the lowest data value to appear on the * edge of the plot area. When the axis' `min` option is set or a max * extreme is set using `axis.setExtremes()`, the maxPadding will be * ignored. */ minPadding?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The minimum range to display on * this axis. The entire axis will not be allowed to span over a smaller * interval than this. For example, for a datetime axis the main unit is * milliseconds. If minRange is set to 3600000, you can't zoom in more than * to one hour. * * The default minRange for the x axis is five times the smallest interval * between any of the data points. * * On a logarithmic axis, the unit for the minimum range is the power. So a * minRange of 1 means that the axis can be zoomed to 10-100, 100-1000, * 1000-10000 etc. * * Note that the `minPadding`, `maxPadding`, `startOnTick` and `endOnTick` * settings also affect how the extremes of the axis are computed. */ minRange?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The minimum tick interval * allowed in axis values. For example on zooming in on an axis with daily * data, this can be used to prevent the axis from showing hours. Defaults * to the closest distance between two points on the axis. */ minTickInterval?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The distance in pixels from the * plot area to the axis line. A positive offset moves the axis with it's * line, labels and ticks away from the plot area. This is typically used * when two or more axes are displayed on the same side of the plot. With * multiple axes the offset is dynamically adjusted to avoid collision, this * can be overridden by setting offset explicitly. */ offset?: number; /** * (Highstock, Highcharts, Gantt) Whether to display the axis on the * opposite side of the normal. The normal is on the left side for vertical * axes and bottom for horizontal, so the opposite sides will be right and * top respectively. This is typically used with dual or multiple axes. */ opposite?: boolean; /** * (Highcharts) Refers to the index in the panes array. Used for circular * gauges and polar charts. When the option is not set then first pane will * be used. */ pane?: number; /** * (Highcharts, Highstock, Gantt) An array of objects defining plot bands on * the Y axis. */ plotBands?: Array<YAxisPlotBandsOptions>; /** * (Highcharts, Highstock, Gantt) An array of objects representing plot * lines on the X axis */ plotLines?: Array<YAxisPlotLinesOptions>; /** * (Highstock) The zoomed range to display when only defining one or none of * `min` or `max`. For example, to show the latest month, a range of one * month can be set. */ range?: number; /** * (Highstock) Options for axis resizing. This feature requires the * drag-panes.js module. It adds a thick line between panes which the user * can drag in order to resize the panes. */ resize?: YAxisResizeOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to reverse the axis so * that the highest number is closest to the origin. */ reversed?: boolean; /** * (Highcharts, Highstock) If `true`, the first series in a stack will be * drawn on top in a positive, non-reversed Y axis. If `false`, the first * series is in the base of the stack. */ reversedStacks?: boolean; /** * (Highstock) An optional scrollbar to display on the Y axis in response to * limiting the minimum an maximum of the axis values. * * In styled mode, all the presentational options for the scrollbar are * replaced by the classes `.highcharts-scrollbar-thumb`, * `.highcharts-scrollbar-arrow`, `.highcharts-scrollbar-button`, * `.highcharts-scrollbar-rifles` and `.highcharts-scrollbar-track`. */ scrollbar?: YAxisScrollbarOptions; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to show the axis line * and title when the axis has no data. */ showEmpty?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) Whether to show the first tick * label. */ showFirstLabel?: boolean; /** * (Highcharts, Highstock, Gantt) Whether to show the last tick label. * Defaults to `true` on cartesian charts, and `false` on polar charts. */ showLastLabel?: boolean; /** * (Highcharts, Highstock, Gantt) A soft maximum for the axis. If the series * data maximum is less than this, the axis will stay at this maximum, but * if the series data maximum is higher, the axis will flex to show all * data. * * **Note**: The series.softThreshold option takes precedence over this * option. */ softMax?: number; /** * (Highcharts, Highstock, Gantt) A soft minimum for the axis. If the series * data minimum is greater than this, the axis will stay at this minimum, * but if the series data minimum is lower, the axis will flex to show all * data. * * **Note**: The series.softThreshold option takes precedence over this * option. */ softMin?: number; /** * (Highcharts) The stack labels show the total value for each bar in a * stacked column or bar chart. The label will be placed on top of positive * columns and below negative columns. In case of an inverted column chart * or a bar chart the label is placed to the right of positive bars and to * the left of negative bars. */ stackLabels?: YAxisStackLabelsOptions; /** * (Highcharts, Highstock, Gantt) For datetime axes, this decides where to * put the tick between weeks. 0 = Sunday, 1 = Monday. */ startOfWeek?: number; /** * (Highcharts, Highstock, Gantt) Whether to force the axis to start on a * tick. Use this option with the `maxPadding` option to control the axis * start. */ startOnTick?: boolean; /** * (Gantt) For vertical axes only. Setting the static scale ensures that * each tick unit is translated into a fixed pixel height. For example, * setting the static scale to 24 results in each Y axis category taking up * 24 pixels, and the height of the chart adjusts. Adding or removing items * will make the chart resize. */ staticScale?: number; /** * (Highcharts) Solid gauge series only. Color stops for the solid gauge. * Use this in cases where a linear gradient between a `minColor` and * `maxColor` is not sufficient. The stops is an array of tuples, where the * first item is a float between 0 and 1 assigning the relative position in * the gradient, and the second item is the color. * * For solid gauges, the Y axis also inherits the concept of data classes * from the Highmaps color axis. */ stops?: Array<[number, ColorString]>; /** * (Highcharts, Highstock, Gantt) The amount of ticks to draw on the axis. * This opens up for aligning the ticks of multiple charts or panes within a * chart. This option overrides the `tickPixelInterval` option. * * This option only has an effect on linear axes. Datetime, logarithmic or * category axes are not affected. */ tickAmount?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) Color for the main tick marks. * * In styled mode, the stroke is given in the `.highcharts-tick` class. */ tickColor?: ColorString; /** * (Highcharts, Highstock, Highmaps, Gantt) The interval of the tick marks * in axis units. When `undefined`, the tick interval is computed to * approximately follow the tickPixelInterval on linear and datetime axes. * On categorized axes, a `undefined` tickInterval will default to 1, one * category. Note that datetime axes are based on milliseconds, so for * example an interval of one day is expressed as `24 * 3600 * 1000`. * * On logarithmic axes, the tickInterval is based on powers, so a * tickInterval of 1 means one tick on each of 0.1, 1, 10, 100 etc. A * tickInterval of 2 means a tick of 0.1, 10, 1000 etc. A tickInterval of * 0.2 puts a tick on 0.1, 0.2, 0.4, 0.6, 0.8, 1, 2, 4, 6, 8, 10, 20, 40 * etc. * * If the tickInterval is too dense for labels to be drawn, Highcharts may * remove ticks. * * If the chart has multiple axes, the alignTicks option may interfere with * the `tickInterval` setting. */ tickInterval?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The pixel length of the main * tick marks. */ tickLength?: number; /** * (Highcharts, Gantt) For categorized axes only. If `on` the tick mark is * placed in the center of the category, if `between` the tick mark is * placed between categories. The default is `between` if the `tickInterval` * is 1, else `on`. */ tickmarkPlacement?: OptionsTickmarkPlacementValue; /** * (Highcharts, Highstock, Highmaps, Gantt) If tickInterval is `null` this * option sets the approximate pixel interval of the tick marks. Not * applicable to categorized axis. * * The tick interval is also influenced by the minTickInterval option, that, * by default prevents ticks from being denser than the data points. */ tickPixelInterval?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The position of the major tick * marks relative to the axis line. Can be one of `inside` and `outside`. */ tickPosition?: OptionsTickPositionValue; /** * (Highcharts, Highstock, Highmaps, Gantt) A callback function returning * array defining where the ticks are laid out on the axis. This overrides * the default behaviour of tickPixelInterval and tickInterval. The * automatic tick positions are accessible through `this.tickPositions` and * can be modified by the callback. */ tickPositioner?: AxisTickPositionerCallbackFunction; /** * (Highcharts, Highstock, Highmaps, Gantt) An array defining where the * ticks are laid out on the axis. This overrides the default behaviour of * tickPixelInterval and tickInterval. */ tickPositions?: Array<number>; /** * (Highcharts, Highstock, Gantt) The pixel width of the major tick marks. */ tickWidth?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The axis title, showing next to * the axis line. */ title?: YAxisTitleOptions; /** * (Highcharts) Parallel coordinates only. Format that will be used for * point.y and available in tooltip.pointFormat as `{point.formattedValue}`. * If not set, `{point.formattedValue}` will use other options, in this * order: * * 1. yAxis.labels.format will be used if set * * 2. If yAxis is a category, then category name will be displayed * * 3. If yAxis is a datetime, then value will use the same format as yAxis * labels * * 4. If yAxis is linear/logarithmic type, then simple value will be used */ tooltipValueFormat?: string; /** * (Highstock) The top position of the Y axis. If it's a number, it is * interpreted as pixel position relative to the chart. * * Since Highstock 2: If it's a percentage string, it is interpreted as * percentages of the plot height, offset from plot area top. */ top?: (number|string); /** * (Highcharts, Gantt) The type of axis. Can be one of `linear`, * `logarithmic`, `datetime`, `category` or `treegrid`. Defaults to * `treegrid` for Gantt charts, `linear` for other chart types. * * In a datetime axis, the numbers are given in milliseconds, and tick marks * are placed on appropriate values, like full hours or days. In a category * or treegrid axis, the point names of the chart's series are used for * categories, if a categories array is not defined. */ type?: AxisTypeValue; /** * (Highcharts, Gantt) Applies only when the axis `type` is `category`. When * `uniqueNames` is true, points are placed on the X axis according to their * names. If the same point name is repeated in the same or another series, * the point is placed on the same X position as other points of the same * name. When `uniqueNames` is false, the points are laid out in increasing * X positions regardless of their names, and the X axis category will take * the name of the last point in each position. */ uniqueNames?: boolean; /** * (Highcharts, Highstock, Gantt) Datetime axis only. An array determining * what time intervals the ticks are allowed to fall on. Each array item is * an array where the first value is the time unit and the second value * another array of allowed multiples. Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; /** * (Highcharts, Highstock, Gantt) Whether axis, including axis title, line, * ticks and labels, should be visible. */ visible?: boolean; } /** * (Highcharts, Highstock, Gantt) Text labels for the plot bands */ export interface YAxisPlotBandsLabelOptions { /** * (Highcharts, Highstock, Gantt) Horizontal alignment of the label. Can be * one of "left", "center" or "right". */ align?: AlignValue; /** * (Highcharts, Highstock, Gantt) Rotation of the text label in degrees . */ rotation?: number; /** * (Highcharts, Highstock, Gantt) CSS styles for the text label. * * In styled mode, the labels are styled by the * `.highcharts-plot-band-label` class. */ style?: CSSObject; /** * (Highcharts, Highstock, Gantt) The string text itself. A subset of HTML * is supported. */ text?: string; /** * (Highcharts, Highstock, Gantt) The text alignment for the label. While * `align` determines where the texts anchor point is placed within the plot * band, `textAlign` determines how the text is aligned against its anchor * point. Possible values are "left", "center" and "right". Defaults to the * same as the `align` option. */ textAlign?: AlignValue; /** * (Highcharts, Highstock, Gantt) Whether to use HTML to render the labels. */ useHTML?: boolean; /** * (Highcharts, Highstock, Gantt) Vertical alignment of the label relative * to the plot band. Can be one of "top", "middle" or "bottom". */ verticalAlign?: VerticalAlignValue; /** * (Highcharts, Highstock, Gantt) Horizontal position relative the * alignment. Default varies by orientation. */ x?: number; /** * (Highcharts, Highstock, Gantt) Vertical position of the text baseline * relative to the alignment. Default varies by orientation. */ y?: number; } /** * (Highcharts, Highstock, Gantt) An array of objects defining plot bands on the * Y axis. */ export interface YAxisPlotBandsOptions { /** * (Highcharts, Highstock, Gantt) Border color for the plot band. Also * requires `borderWidth` to be set. */ borderColor?: ColorString; /** * (Highcharts, Highstock, Gantt) Border width for the plot band. Also * requires `borderColor` to be set. */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) A custom class name, in addition to the * default `highcharts-plot-band`, to apply to each individual band. */ className?: string; /** * (Highcharts, Highstock, Gantt) The color of the plot band. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) An object defining mouse events for the * plot band. Supported properties are `click`, `mouseover`, `mouseout`, * `mousemove`. */ events?: any; /** * (Highcharts, Highstock, Gantt) The start position of the plot band in * axis units. */ from?: number; /** * (Highcharts, Highstock, Gantt) An id used for identifying the plot band * in Axis.removePlotBand. */ id?: string; /** * (Highcharts) In a gauge chart, this option determines the inner radius of * the plot band that stretches along the perimeter. It can be given as a * percentage string, like `"100%"`, or as a pixel number, like `100`. By * default, the inner radius is controlled by the thickness option. */ innerRadius?: (number|string); /** * (Highcharts, Highstock, Gantt) Text labels for the plot bands */ label?: YAxisPlotBandsLabelOptions; /** * (Highcharts) In a gauge chart, this option determines the outer radius of * the plot band that stretches along the perimeter. It can be given as a * percentage string, like `"100%"`, or as a pixel number, like `100`. */ outerRadius?: (number|string); /** * (Highcharts) In a gauge chart, this option sets the width of the plot * band stretching along the perimeter. It can be given as a percentage * string, like `"10%"`, or as a pixel number, like `10`. The default value * 10 is the same as the default tickLength, thus making the plot band act * as a background for the tick markers. */ thickness?: (number|string); /** * (Highcharts, Highstock, Gantt) The end position of the plot band in axis * units. */ to?: number; /** * (Highcharts, Highstock, Gantt) The z index of the plot band within the * chart, relative to other elements. Using the same z index as another * element may give unpredictable results, as the last rendered element will * be on top. Values from 0 to 20 make sense. */ zIndex?: number; } /** * (Highcharts, Highstock, Gantt) Text labels for the plot bands */ export interface YAxisPlotLinesLabelOptions { /** * (Highcharts, Highstock, Gantt) Horizontal alignment of the label. Can be * one of "left", "center" or "right". */ align?: AlignValue; /** * (Highcharts, Highstock, Gantt) Rotation of the text label in degrees. * Defaults to 0 for horizontal plot lines and 90 for vertical lines. */ rotation?: number; /** * (Highcharts, Highstock, Gantt) CSS styles for the text label. * * In styled mode, the labels are styled by the * `.highcharts-plot-line-label` class. */ style?: CSSObject; /** * (Highcharts, Highstock, Gantt) The text itself. A subset of HTML is * supported. */ text?: string; /** * (Highcharts, Highstock, Gantt) The text alignment for the label. While * `align` determines where the texts anchor point is placed within the plot * band, `textAlign` determines how the text is aligned against its anchor * point. Possible values are "left", "center" and "right". Defaults to the * same as the `align` option. */ textAlign?: AlignValue; /** * (Highcharts, Highstock, Gantt) Whether to use HTML to render the labels. */ useHTML?: boolean; /** * (Highcharts, Highstock, Gantt) Vertical alignment of the label relative * to the plot line. Can be one of "top", "middle" or "bottom". */ verticalAlign?: VerticalAlignValue; /** * (Highcharts, Highstock, Gantt) Horizontal position relative the * alignment. Default varies by orientation. */ x?: number; /** * (Highcharts, Highstock, Gantt) Vertical position of the text baseline * relative to the alignment. Default varies by orientation. */ y?: number; } /** * (Highcharts, Highstock, Gantt) An array of objects representing plot lines on * the X axis */ export interface YAxisPlotLinesOptions { /** * (Highcharts, Highstock, Gantt) A custom class name, in addition to the * default `highcharts-plot-line`, to apply to each individual line. */ className?: string; /** * (Highcharts, Highstock, Gantt) The color of the line. */ color?: ColorString; /** * (Highcharts, Highstock, Gantt) The dashing or dot style for the plot * line. For possible values see this overview. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock, Gantt) An object defining mouse events for the * plot line. Supported properties are `click`, `mouseover`, `mouseout`, * `mousemove`. */ events?: any; /** * (Highcharts, Highstock, Gantt) An id used for identifying the plot line * in Axis.removePlotLine. */ id?: string; /** * (Highcharts, Highstock, Gantt) Text labels for the plot bands */ label?: YAxisPlotLinesLabelOptions; /** * (Highcharts, Highstock, Gantt) The position of the line in axis units. */ value?: number; /** * (Highcharts, Highstock, Gantt) The width or thickness of the plot line. */ width?: number; /** * (Highcharts, Highstock, Gantt) The z index of the plot line within the * chart. */ zIndex?: number; } /** * (Highstock) Contains two arrays of axes that are controlled by control line * of the axis. * * This feature requires the `drag-panes.js` module. */ export interface YAxisResizeControlledAxisOptions { /** * (Highstock) Array of axes that should move out of the way of resizing * being done for the current axis. If not set, the next axis will be used. * * This feature requires the `drag-panes.js` module. */ next?: Array<(string|number)>; /** * (Highstock) Array of axes that should move with the current axis while * resizing. * * This feature requires the `drag-panes.js` module. */ prev?: Array<(string|number)>; } /** * (Highstock) Options for axis resizing. This feature requires the * drag-panes.js module. It adds a thick line between panes which the user can * drag in order to resize the panes. */ export interface YAxisResizeOptions { /** * (Highstock) Contains two arrays of axes that are controlled by control * line of the axis. * * This feature requires the `drag-panes.js` module. */ controlledAxis?: YAxisResizeControlledAxisOptions; /** * (Highstock) Cursor style for the control line. * * In styled mode use class `highcharts-axis-resizer` instead. * * This feature requires the `drag-panes.js` module. */ cursor?: string; /** * (Highstock) Enable or disable resize by drag for the axis. * * This feature requires the `drag-panes.js` module. */ enabled?: boolean; /** * (Highstock) Color of the control line. * * In styled mode use class `highcharts-axis-resizer` instead. * * This feature requires the `drag-panes.js` module. */ lineColor?: ColorString; /** * (Highstock) Dash style of the control line. * * In styled mode use class `highcharts-axis-resizer` instead. * * This feature requires the `drag-panes.js` module. */ lineDashStyle?: string; /** * (Highstock) Width of the control line. * * In styled mode use class `highcharts-axis-resizer` instead. * * This feature requires the `drag-panes.js` module. */ lineWidth?: number; /** * (Highstock) Horizontal offset of the control line. * * This feature requires the `drag-panes.js` module. */ x?: number; /** * (Highstock) Vertical offset of the control line. * * This feature requires the `drag-panes.js` module. */ y?: number; } /** * (Highstock) An optional scrollbar to display on the Y axis in response to * limiting the minimum an maximum of the axis values. * * In styled mode, all the presentational options for the scrollbar are replaced * by the classes `.highcharts-scrollbar-thumb`, `.highcharts-scrollbar-arrow`, * `.highcharts-scrollbar-button`, `.highcharts-scrollbar-rifles` and * `.highcharts-scrollbar-track`. */ export interface YAxisScrollbarOptions { /** * (Highstock) The background color of the scrollbar itself. */ barBackgroundColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the scrollbar's border. */ barBorderColor?: ColorString; /** * (Highstock) The border rounding radius of the bar. */ barBorderRadius?: number; /** * (Highstock) The width of the bar's border. */ barBorderWidth?: number; /** * (Highstock) The color of the small arrow inside the scrollbar buttons. */ buttonArrowColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of scrollbar buttons. */ buttonBackgroundColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the border of the scrollbar buttons. */ buttonBorderColor?: ColorString; /** * (Highstock) The corner radius of the scrollbar buttons. */ buttonBorderRadius?: number; /** * (Highstock) The border width of the scrollbar buttons. */ buttonBorderWidth?: number; /** * (Highstock) Enable the scrollbar on the Y axis. */ enabled?: boolean; /** * (Highstock) Whether to redraw the main chart as the scrollbar or the * navigator zoomed window is moved. Defaults to `true` for modern browsers * and `false` for legacy IE browsers as well as mobile devices. */ liveRedraw?: boolean; /** * (Highstock) Pixel margin between the scrollbar and the axis elements. */ margin?: number; /** * (Highstock) The minimum width of the scrollbar. */ minWidth?: number; /** * (Highstock) The color of the small rifles in the middle of the scrollbar. */ rifleColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Whether to show the scrollbar when it is fully zoomed out at * max range. Setting it to `false` on the Y axis makes the scrollbar stay * hidden until the user zooms in, like common in browsers. */ showFull?: boolean; /** * (Highstock) The width of a vertical scrollbar or height of a horizontal * scrollbar. Defaults to 20 on touch devices. */ size?: number; step?: number; /** * (Highstock) The color of the track background. */ trackBackgroundColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the border of the scrollbar track. */ trackBorderColor?: ColorString; /** * (Highstock) The corner radius of the border of the scrollbar track. */ trackBorderRadius?: number; /** * (Highstock) The width of the border of the scrollbar track. */ trackBorderWidth?: number; /** * (Highstock) Z index of the scrollbar elements. */ zIndex?: number; } /** * (Highcharts) The stack labels show the total value for each bar in a stacked * column or bar chart. The label will be placed on top of positive columns and * below negative columns. In case of an inverted column chart or a bar chart * the label is placed to the right of positive bars and to the left of negative * bars. */ export interface YAxisStackLabelsOptions { /** * (Highcharts) Defines the horizontal alignment of the stack total label. * Can be one of `"left"`, `"center"` or `"right"`. The default value is * calculated at runtime and depends on orientation and whether the stack is * positive or negative. */ align?: AlignValue; /** * (Highcharts) Allow the stack labels to overlap. */ allowOverlap?: boolean; /** * (Highcharts) Enable or disable the stack total labels. */ enabled?: boolean; /** * (Highcharts, Highstock) A format string for the data label. Available * variables are the same as for `formatter`. */ format?: string; /** * (Highcharts) Callback JavaScript function to format the label. The value * is given by `this.total`. */ formatter?: FormatterCallbackFunction<StackItemObject>; /** * (Highcharts) Rotation of the labels in degrees. */ rotation?: number; /** * (Highcharts) CSS styles for the label. * * In styled mode, the styles are set in the `.highcharts-stack-label` * class. */ style?: CSSObject; /** * (Highcharts) The text alignment for the label. While `align` determines * where the texts anchor point is placed with regards to the stack, * `textAlign` determines how the text is aligned against its anchor point. * Possible values are `"left"`, `"center"` and `"right"`. The default value * is calculated at runtime and depends on orientation and whether the stack * is positive or negative. */ textAlign?: AlignValue; /** * (Highcharts, Highstock) Whether to use HTML to render the labels. */ useHTML?: boolean; /** * (Highcharts) Defines the vertical alignment of the stack total label. Can * be one of `"top"`, `"middle"` or `"bottom"`. The default value is * calculated at runtime and depends on orientation and whether the stack is * positive or negative. */ verticalAlign?: VerticalAlignValue; /** * (Highcharts) The x position offset of the label relative to the left of * the stacked bar. The default value is calculated at runtime and depends * on orientation and whether the stack is positive or negative. */ x?: number; /** * (Highcharts) The y position offset of the label relative to the tick * position on the axis. The default value is calculated at runtime and * depends on orientation and whether the stack is positive or negative. */ y?: number; } /** * (Highcharts, Highstock, Highmaps, Gantt) The axis title, showing next to the * axis line. */ export interface YAxisTitleOptions { /** * (Highcharts, Highstock, Highmaps, Gantt) Alignment of the title relative * to the axis values. Possible values are "low", "middle" or "high". */ align?: AxisTitleAlignValue; /** * (Highcharts) Deprecated. Set the `text` to `null` to disable the title. */ enabled?: string; /** * (Highcharts, Highstock, Highmaps, Gantt) The pixel distance between the * axis labels and the title. Positive values are outside the axis line, * negative are inside. */ margin?: number; /** * (Highcharts, Highstock, Highmaps, Gantt) The distance of the axis title * from the axis line. By default, this distance is computed from the offset * width of the labels, the labels' distance from the axis and the title's * margin. However when the offset option is set, it overrides all this. */ offset?: number; /** * (Highcharts) Defines how the title is repositioned according to the 3D * chart orientation. * * - `'offset'`: Maintain a fixed horizontal/vertical distance from the tick * marks, despite the chart orientation. This is the backwards compatible * behavior, and causes skewing of X and Z axes. * * - `'chart'`: Preserve 3D position relative to the chart. This looks nice, * but hard to read if the text isn't forward-facing. * * - `'flap'`: Rotated text along the axis to compensate for the chart * orientation. This tries to maintain text as legible as possible on all * orientations. * * - `'ortho'`: Rotated text along the axis direction so that the labels are * orthogonal to the axis. This is very similar to `'flap'`, but prevents * skewing the labels (X and Y scaling are still present). * * - `undefined`: Will use the config from `labels.position3d` */ position3d?: ("chart"|"flap"|"offset"|"ortho"|null); /** * (Highcharts, Highstock, Gantt) Whether to reserve space for the title * when laying out the axis. */ reserveSpace?: boolean; /** * (Highcharts, Highstock, Highmaps, Gantt) The rotation of the text in * degrees. 0 is horizontal, 270 is vertical reading from bottom to top. */ rotation?: number; /** * (Highcharts) If enabled, the axis title will skewed to follow the * perspective. * * This will fix overlapping labels and titles, but texts become less * legible due to the distortion. * * The final appearance depends heavily on `title.position3d`. * * A `null` value will use the config from `labels.skew3d`. */ skew3d?: (boolean|null); /** * (Highcharts, Highstock, Highmaps, Gantt) CSS styles for the title. If the * title text is longer than the axis length, it will wrap to multiple lines * by default. This can be customized by setting `textOverflow: 'ellipsis'`, * by setting a specific `width` or by setting `whiteSpace: 'nowrap'`. * * In styled mode, the stroke width is given in the `.highcharts-axis-title` * class. */ style?: CSSObject; /** * (Highcharts, Highstock, Gantt) The actual text of the axis title. * Horizontal texts can contain HTML, but rotated texts are painted using * vector techniques and must be clean text. The Y axis title is disabled by * setting the `text` option to `undefined`. */ text?: (string|null); /** * (Highcharts, Highstock, Highmaps, Gantt) Alignment of the text, can be * `"left"`, `"right"` or `"center"`. Default alignment depends on the * title.align: * * Horizontal axes: * * - for `align` = `"low"`, `textAlign` is set to `left` * * - for `align` = `"middle"`, `textAlign` is set to `center` * * - for `align` = `"high"`, `textAlign` is set to `right` * * Vertical axes: * * - for `align` = `"low"` and `opposite` = `true`, `textAlign` is set to * `right` * * - for `align` = `"low"` and `opposite` = `false`, `textAlign` is set to * `left` * * - for `align` = `"middle"`, `textAlign` is set to `center` * * - for `align` = `"high"` and `opposite` = `true` `textAlign` is set to * `left` * * - for `align` = `"high"` and `opposite` = `false` `textAlign` is set to * `right` */ textAlign?: AlignValue; /** * (Highcharts, Highstock, Gantt) Whether to use HTML to render the axis * title. */ useHTML?: boolean; /** * (Highcharts, Highstock, Gantt) Horizontal pixel offset of the title * position. */ x?: number; /** * (Highcharts, Highstock, Gantt) Vertical pixel offset of the title * position. */ y?: number; } /** * (Highcharts) Accessibility options for an axis. Requires the accessibility * module. */ export interface ZAxisAccessibilityOptions { /** * (Highcharts) Description for an axis to expose to screen reader users. */ description?: string; /** * (Highcharts) Enable axis accessibility features, including axis * information in the screen reader information region. If this is disabled * on the xAxis, the x values are not exposed to screen readers for the * individual data points by default. */ enabled?: boolean; /** * (Highcharts) Range description for an axis. Overrides the default range * description. Set to empty to disable range description for this axis. */ rangeDescription?: string; } /** * (Gantt) Text labels for the plot bands */ export interface ZAxisCurrentDateIndicatorLabelOptions { /** * (Gantt) Horizontal alignment of the label. Can be one of "left", "center" * or "right". */ align?: AlignValue; /** * (Gantt) Rotation of the text label in degrees. Defaults to 0 for * horizontal plot lines and 90 for vertical lines. */ rotation?: number; /** * (Gantt) CSS styles for the text label. * * In styled mode, the labels are styled by the * `.highcharts-plot-line-label` class. */ style?: CSSObject; /** * (Gantt) The text itself. A subset of HTML is supported. */ text?: string; /** * (Gantt) The text alignment for the label. While `align` determines where * the texts anchor point is placed within the plot band, `textAlign` * determines how the text is aligned against its anchor point. Possible * values are "left", "center" and "right". Defaults to the same as the * `align` option. */ textAlign?: AlignValue; /** * (Gantt) Whether to use HTML to render the labels. */ useHTML?: boolean; /** * (Gantt) Vertical alignment of the label relative to the plot line. Can be * one of "top", "middle" or "bottom". */ verticalAlign?: VerticalAlignValue; /** * (Gantt) Horizontal position relative the alignment. Default varies by * orientation. */ x?: number; /** * (Gantt) Vertical position of the text baseline relative to the alignment. * Default varies by orientation. */ y?: number; } /** * (Gantt) Show an indicator on the axis for the current date and time. Can be a * boolean or a configuration object similar to xAxis.plotLines. */ export interface ZAxisCurrentDateIndicatorOptions { /** * (Gantt) A custom class name, in addition to the default * `highcharts-plot-line`, to apply to each individual line. */ className?: string; /** * (Gantt) The color of the line. */ color?: ColorString; /** * (Gantt) The dashing or dot style for the plot line. For possible values * see this overview. */ dashStyle?: DashStyleValue; /** * (Gantt) An object defining mouse events for the plot line. Supported * properties are `click`, `mouseover`, `mouseout`, `mousemove`. */ events?: any; /** * (Gantt) An id used for identifying the plot line in Axis.removePlotLine. */ id?: string; /** * (Gantt) Text labels for the plot bands */ label?: ZAxisCurrentDateIndicatorLabelOptions; /** * (Gantt) The width or thickness of the plot line. */ width?: number; /** * (Gantt) The z index of the plot line within the chart. */ zIndex?: number; } export interface ZAxisDateTimeLabelFormatsDayOptions { main?: string; } export interface ZAxisDateTimeLabelFormatsHourOptions { main?: string; range?: boolean; } export interface ZAxisDateTimeLabelFormatsMillisecondOptions { main?: string; range?: boolean; } export interface ZAxisDateTimeLabelFormatsMinuteOptions { main?: string; range?: boolean; } export interface ZAxisDateTimeLabelFormatsMonthOptions { main?: string; } /** * (Highcharts, Highstock, Gantt) For a datetime axis, the scale will * automatically adjust to the appropriate unit. This member gives the default * string representations used for each unit. For intermediate values, different * units may be used, for example the `day` unit can be used on midnight and * `hour` unit be used for intermediate values on the same axis. For an overview * of the replacement codes, see dateFormat. Defaults to: * * (see online documentation for example) */ export interface ZAxisDateTimeLabelFormatsOptions { day?: ZAxisDateTimeLabelFormatsDayOptions; hour?: ZAxisDateTimeLabelFormatsHourOptions; millisecond?: ZAxisDateTimeLabelFormatsMillisecondOptions; minute?: ZAxisDateTimeLabelFormatsMinuteOptions; month?: ZAxisDateTimeLabelFormatsMonthOptions; second?: ZAxisDateTimeLabelFormatsSecondOptions; week?: ZAxisDateTimeLabelFormatsWeekOptions; year?: ZAxisDateTimeLabelFormatsYearOptions; } export interface ZAxisDateTimeLabelFormatsSecondOptions { main?: string; range?: boolean; } export interface ZAxisDateTimeLabelFormatsWeekOptions { main?: string; } export interface ZAxisDateTimeLabelFormatsYearOptions { main?: string; } /** * (Highcharts) Event handlers for the axis. */ export interface ZAxisEventsOptions { /** * (Highcharts, Gantt) An event fired after the breaks have rendered. */ afterBreaks?: AxisEventCallbackFunction; /** * (Highcharts) As opposed to the `setExtremes` event, this event fires * after the final min and max values are computed and corrected for * `minRange`. * * Fires when the minimum and maximum is set for the axis, either by calling * the `.setExtremes()` method or by selecting an area in the chart. One * parameter, `event`, is passed to the function, containing common event * information. * * The new user set minimum and maximum values can be found by `event.min` * and `event.max`. These reflect the axis minimum and maximum in axis * values. The actual data extremes are found in `event.dataMin` and * `event.dataMax`. */ afterSetExtremes?: AxisSetExtremesEventCallbackFunction; /** * (Highcharts, Gantt) An event fired when a break from this axis occurs on * a point. */ pointBreak?: AxisPointBreakEventCallbackFunction; /** * (Highcharts, Highstock, Gantt) An event fired when a point falls inside a * break from this axis. */ pointInBreak?: AxisPointBreakEventCallbackFunction; /** * (Highcharts) Fires when the minimum and maximum is set for the axis, * either by calling the `.setExtremes()` method or by selecting an area in * the chart. One parameter, `event`, is passed to the function, containing * common event information. * * The new user set minimum and maximum values can be found by `event.min` * and `event.max`. These reflect the axis minimum and maximum in data * values. When an axis is zoomed all the way out from the "Reset zoom" * button, `event.min` and `event.max` are null, and the new extremes are * set based on `this.dataMin` and `this.dataMax`. */ setExtremes?: AxisSetExtremesEventCallbackFunction; } /** * (Gantt) Set grid options for the axis labels. Requires Highcharts Gantt. */ export interface ZAxisGridOptions { /** * (Gantt) Set border color for the label grid lines. */ borderColor?: ColorString; /** * (Gantt) Set border width of the label grid lines. */ borderWidth?: number; /** * (Gantt) Set cell height for grid axis labels. By default this is * calculated from font size. */ cellHeight?: number; /** * (Gantt) Set specific options for each column (or row for horizontal axes) * in the grid. Each extra column/row is its own axis, and the axis options * can be set here. */ columns?: Array<XAxisOptions>; /** * (Gantt) Enable grid on the axis labels. Defaults to true for Gantt * charts. */ enabled?: boolean; } /** * (Highcharts) The axis labels show the number or category for each tick. */ export interface ZAxisLabelsOptions { /** * (Highcharts) What part of the string the given position is anchored to. * If `left`, the left side of the string is at the axis position. Can be * one of `"left"`, `"center"` or `"right"`. Defaults to an intelligent * guess based on which side of the chart the axis is on and the rotation of * the label. */ align?: AlignValue; /** * (Highcharts, Highstock, Gantt) For horizontal axes, the allowed degrees * of label rotation to prevent overlapping labels. If there is enough * space, labels are not rotated. As the chart gets narrower, it will start * rotating the labels -45 degrees, then remove every second label and try * again with rotations 0 and -45 etc. Set it to `false` to disable * rotation, which will cause the labels to word-wrap if possible. */ autoRotation?: (false|Array<number>); /** * (Highcharts, Gantt) When each category width is more than this many * pixels, we don't apply auto rotation. Instead, we lay out the axis label * with word wrap. A lower limit makes sense when the label contains * multiple short words that don't extend the available horizontal space for * each label. */ autoRotationLimit?: number; /** * (Highcharts, Gantt) Polar charts only. The label's pixel distance from * the perimeter of the plot area. */ distance?: number; /** * (Highcharts) Enable or disable the axis labels. */ enabled?: boolean; /** * (Highcharts) A format string for the axis label. */ format?: string; /** * (Highcharts) Callback JavaScript function to format the label. The value * is given by `this.value`. Additional properties for `this` are `axis`, * `chart`, `isFirst` and `isLast`. The value of the default label formatter * can be retrieved by calling `this.axis.defaultLabelFormatter.call(this)` * within the function. * * Defaults to: * * (see online documentation for example) */ formatter?: FormatterCallbackFunction<AxisLabelsFormatterContextObject>; /** * (Gantt) The number of pixels to indent the labels per level in a treegrid * axis. */ indentation?: number; /** * (Highcharts) Horizontal axis only. When `staggerLines` is not set, * `maxStaggerLines` defines how many lines the axis is allowed to add to * automatically avoid overlapping X labels. Set to `1` to disable overlap * detection. */ maxStaggerLines?: number; /** * (Highcharts) How to handle overflowing labels on horizontal axis. If set * to `"allow"`, it will not be aligned at all. By default it `"justify"` * labels inside the chart area. If there is room to move it, it will be * aligned to the edge, else it will be removed. */ overflow?: OptionsOverflowValue; /** * (Highcharts, Gantt) The pixel padding for axis labels, to ensure white * space between them. */ padding?: number; /** * (Highcharts) Defines how the labels are be repositioned according to the * 3D chart orientation. * * - `'offset'`: Maintain a fixed horizontal/vertical distance from the tick * marks, despite the chart orientation. This is the backwards compatible * behavior, and causes skewing of X and Z axes. * * - `'chart'`: Preserve 3D position relative to the chart. This looks nice, * but hard to read if the text isn't forward-facing. * * - `'flap'`: Rotated text along the axis to compensate for the chart * orientation. This tries to maintain text as legible as possible on all * orientations. * * - `'ortho'`: Rotated text along the axis direction so that the labels are * orthogonal to the axis. This is very similar to `'flap'`, but prevents * skewing the labels (X and Y scaling are still present). */ position3d?: OptionsPosition3dValue; /** * (Highcharts, Gantt) Whether to reserve space for the labels. By default, * space is reserved for the labels in these cases: * * * On all horizontal axes. * * * On vertical axes if `label.align` is `right` on a left-side axis or * `left` on a right-side axis. * * * On vertical axes if `label.align` is `center`. * * This can be turned off when for example the labels are rendered inside * the plot area instead of outside. */ reserveSpace?: boolean; /** * (Highcharts) Rotation of the labels in degrees. */ rotation?: number; /** * (Highcharts) If enabled, the axis labels will skewed to follow the * perspective. * * This will fix overlapping labels and titles, but texts become less * legible due to the distortion. * * The final appearance depends heavily on `labels.position3d`. */ skew3d?: boolean; /** * (Highcharts) Horizontal axes only. The number of lines to spread the * labels over to make room or tighter labels. */ staggerLines?: number; /** * (Highcharts) To show only every _n_'th label on the axis, set the step to * _n_. Setting the step to 2 shows every other label. * * By default, the step is calculated automatically to avoid overlap. To * prevent this, set it to 1\. This usually only happens on a category axis, * and is often a sign that you have chosen the wrong axis type. * * Read more at Axis docs => What axis should I use? */ step?: number; /** * (Highcharts) CSS styles for the label. Use `whiteSpace: 'nowrap'` to * prevent wrapping of category labels. Use `textOverflow: 'none'` to * prevent ellipsis (dots). * * In styled mode, the labels are styled with the `.highcharts-axis-labels` * class. */ style?: CSSObject; /** * (Highcharts) Whether to use HTML to render the labels. */ useHTML?: boolean; /** * (Highcharts) The x position offset of the label relative to the tick * position on the axis. */ x?: number; /** * (Highcharts) The y position offset of the label relative to the tick * position on the axis. The default makes it adapt to the font size on * bottom axis. */ y?: number; /** * (Highcharts) The Z index for the axis labels. */ zIndex?: number; } /** * (Highcharts) The Z axis or depth axis for 3D plots. * * See the Axis class for programmatic access to the axis. */ export interface ZAxisOptions { /** * (Highcharts) Accessibility options for an axis. Requires the * accessibility module. */ accessibility?: (object|ZAxisAccessibilityOptions); /** * (Highcharts, Highstock, Gantt) When using multiple axis, the ticks of two * or more opposite axes will automatically be aligned by adding ticks to * the axis or axes with the least ticks, as if `tickAmount` were specified. * * This can be prevented by setting `alignTicks` to false. If the grid lines * look messy, it's a good idea to hide them for the secondary axis by * setting `gridLineWidth` to 0. * * If `startOnTick` or `endOnTick` in an Axis options are set to false, then * the `alignTicks ` will be disabled for the Axis. * * Disabled for logarithmic axes. */ alignTicks?: boolean; /** * (Highcharts) Whether to allow decimals in this axis' ticks. When counting * integers, like persons or hits on a web page, decimals should be avoided * in the labels. */ allowDecimals?: boolean; /** * (Highcharts) When using an alternate grid color, a band is painted across * the plot area between every other grid line. */ alternateGridColor?: ColorString; /** * (Highcharts, Gantt) If categories are present for the xAxis, names are * used instead of numbers for that axis. Since Highcharts 3.0, categories * can also be extracted by giving each point a name and setting axis type * to `category`. However, if you have multiple series, best practice * remains defining the `categories` array. * * Example: * * (see online documentation for example) */ categories?: Array<string>; /** * (Highcharts, Highstock, Gantt) The highest allowed value for * automatically computed axis extremes. */ ceiling?: number; /** * (Highcharts) A class name that opens for styling the axis by CSS, * especially in Highcharts styled mode. The class name is applied to group * elements for the grid, axis elements and labels. */ className?: string; /** * (Gantt) Show an indicator on the axis for the current date and time. Can * be a boolean or a configuration object similar to xAxis.plotLines. */ currentDateIndicator?: (boolean|ZAxisCurrentDateIndicatorOptions); /** * (Highcharts, Highstock, Gantt) For a datetime axis, the scale will * automatically adjust to the appropriate unit. This member gives the * default string representations used for each unit. For intermediate * values, different units may be used, for example the `day` unit can be * used on midnight and `hour` unit be used for intermediate values on the * same axis. For an overview of the replacement codes, see dateFormat. * Defaults to: * * (see online documentation for example) */ dateTimeLabelFormats?: ZAxisDateTimeLabelFormatsOptions; /** * (Highcharts) Whether to force the axis to end on a tick. Use this option * with the `maxPadding` option to control the axis end. */ endOnTick?: boolean; /** * (Highcharts) Event handlers for the axis. */ events?: ZAxisEventsOptions; /** * (Highcharts, Highstock, Gantt) The lowest allowed value for automatically * computed axis extremes. */ floor?: number; /** * (Gantt) Set grid options for the axis labels. Requires Highcharts Gantt. */ grid?: ZAxisGridOptions; /** * (Highcharts) Color of the grid lines extending the ticks across the plot * area. * * In styled mode, the stroke is given in the `.highcharts-grid-line` class. */ gridLineColor?: ColorString; /** * (Highcharts) The dash or dot style of the grid lines. For possible * values, see this demonstration. */ gridLineDashStyle?: DashStyleValue; /** * (Highcharts) The width of the grid lines extending the ticks across the * plot area. * * In styled mode, the stroke width is given in the `.highcharts-grid-line` * class. */ gridLineWidth?: number; /** * (Highcharts, Highstock, Gantt) The Z index of the grid lines. */ gridZIndex?: number; /** * (Highcharts) An id for the axis. This can be used after render time to * get a pointer to the axis object through `chart.get()`. */ id?: string; /** * (Highcharts) The axis labels show the number or category for each tick. */ labels?: ZAxisLabelsOptions; /** * (Highcharts, Highstock, Gantt) Index of another axis that this axis is * linked to. When an axis is linked to a master axis, it will take the same * extremes as the master, but as assigned by min or max or by setExtremes. * It can be used to show additional info, or to ease reading the chart by * duplicating the scales. */ linkedTo?: number; /** * (Highcharts) If there are multiple axes on the same side of the chart, * the pixel margin between the axes. Defaults to 0 on vertical axes, 15 on * horizontal axes. */ margin?: any; /** * (Highcharts) The maximum value of the axis. If `null`, the max value is * automatically calculated. * * If the endOnTick option is true, the `max` value might be rounded up. * * If a tickAmount is set, the axis may be extended beyond the set max in * order to reach the given number of ticks. The same may happen in a chart * with multiple axes, determined by chart. alignTicks, where a `tickAmount` * is applied internally. */ max?: (number|null); /** * (Highcharts) Padding of the max value relative to the length of the axis. * A padding of 0.05 will make a 100px axis 5px longer. This is useful when * you don't want the highest data value to appear on the edge of the plot * area. When the axis' `max` option is set or a max extreme is set using * `axis.setExtremes()`, the maxPadding will be ignored. */ maxPadding?: number; /** * (Highstock, Gantt) Maximum range which can be set using the navigator's * handles. Opposite of xAxis.minRange. */ maxRange?: number; /** * (Highcharts, Highstock) Deprecated. Use `minRange` instead. */ maxZoom?: number; /** * (Highcharts) The minimum value of the axis. If `null` the min value is * automatically calculated. * * If the startOnTick option is true (default), the `min` value might be * rounded down. * * The automatically calculated minimum value is also affected by floor, * softMin, minPadding, minRange as well as series.threshold and * series.softThreshold. */ min?: (number|null); /** * (Highcharts) Color of the minor, secondary grid lines. * * In styled mode, the stroke width is given in the * `.highcharts-minor-grid-line` class. */ minorGridLineColor?: ColorString; /** * (Highcharts) The dash or dot style of the minor grid lines. For possible * values, see this demonstration. */ minorGridLineDashStyle?: DashStyleValue; /** * (Highcharts) Width of the minor, secondary grid lines. * * In styled mode, the stroke width is given in the `.highcharts-grid-line` * class. */ minorGridLineWidth?: number; /** * (Highcharts) Color for the minor tick marks. */ minorTickColor?: ColorString; /** * (Highcharts) Specific tick interval in axis units for the minor ticks. On * a linear axis, if `"auto"`, the minor tick interval is calculated as a * fifth of the tickInterval. If `null` or `undefined`, minor ticks are not * shown. * * On logarithmic axes, the unit is the power of the value. For example, * setting the minorTickInterval to 1 puts one tick on each of 0.1, 1, 10, * 100 etc. Setting the minorTickInterval to 0.1 produces 9 ticks between 1 * and 10, 10 and 100 etc. * * If user settings dictate minor ticks to become too dense, they don't make * sense, and will be ignored to prevent performance problems. */ minorTickInterval?: (number|string|null); /** * (Highcharts) The pixel length of the minor tick marks. */ minorTickLength?: number; /** * (Highcharts) The position of the minor tick marks relative to the axis * line. Can be one of `inside` and `outside`. */ minorTickPosition?: OptionsMinorTickPositionValue; /** * (Highcharts) Enable or disable minor ticks. Unless minorTickInterval is * set, the tick interval is calculated as a fifth of the `tickInterval`. * * On a logarithmic axis, minor ticks are laid out based on a best guess, * attempting to enter approximately 5 minor ticks between each major tick. * * Prior to v6.0.0, ticks were unabled in auto layout by setting * `minorTickInterval` to `"auto"`. */ minorTicks?: boolean; /** * (Highcharts) The pixel width of the minor tick mark. */ minorTickWidth?: number; /** * (Highcharts, Highstock, Gantt) Padding of the min value relative to the * length of the axis. A padding of 0.05 will make a 100px axis 5px longer. * This is useful when you don't want the lowest data value to appear on the * edge of the plot area. When the axis' `min` option is set or a min * extreme is set using `axis.setExtremes()`, the minPadding will be * ignored. */ minPadding?: number; /** * (Highcharts) The minimum range to display on this axis. The entire axis * will not be allowed to span over a smaller interval than this. For * example, for a datetime axis the main unit is milliseconds. If minRange * is set to 3600000, you can't zoom in more than to one hour. * * The default minRange for the x axis is five times the smallest interval * between any of the data points. * * On a logarithmic axis, the unit for the minimum range is the power. So a * minRange of 1 means that the axis can be zoomed to 10-100, 100-1000, * 1000-10000 etc. * * Note that the `minPadding`, `maxPadding`, `startOnTick` and `endOnTick` * settings also affect how the extremes of the axis are computed. */ minRange?: number; /** * (Highcharts) The minimum tick interval allowed in axis values. For * example on zooming in on an axis with daily data, this can be used to * prevent the axis from showing hours. Defaults to the closest distance * between two points on the axis. */ minTickInterval?: number; /** * (Highcharts) The distance in pixels from the plot area to the axis line. * A positive offset moves the axis with it's line, labels and ticks away * from the plot area. This is typically used when two or more axes are * displayed on the same side of the plot. With multiple axes the offset is * dynamically adjusted to avoid collision, this can be overridden by * setting offset explicitly. */ offset?: number; /** * (Highcharts) Whether to display the axis on the opposite side of the * normal. The normal is on the left side for vertical axes and bottom for * horizontal, so the opposite sides will be right and top respectively. * This is typically used with dual or multiple axes. */ opposite?: boolean; /** * (Highstock) In an ordinal axis, the points are equally spaced in the * chart regardless of the actual time or x distance between them. This * means that missing data periods (e.g. nights or weekends for a stock * chart) will not take up space in the chart. Having `ordinal: false` will * show any gaps created by the `gapSize` setting proportionate to their * duration. * * In stock charts the X axis is ordinal by default, unless the boost module * is used and at least one of the series' data length exceeds the * boostThreshold. */ ordinal?: boolean; /** * (Highstock) Additional range on the right side of the xAxis. Works * similar to `xAxis.maxPadding`, but value is set in milliseconds. Can be * set for both main `xAxis` and the navigator's `xAxis`. */ overscroll?: number; /** * (Highcharts) Refers to the index in the panes array. Used for circular * gauges and polar charts. When the option is not set then first pane will * be used. */ pane?: number; /** * (Highcharts, Highstock, Gantt) An array of colored bands stretching * across the plot area marking an interval on the axis. * * In styled mode, the plot bands are styled by the `.highcharts-plot-band` * class in addition to the `className` option. */ plotBands?: Array<ZAxisPlotBandsOptions>; /** * (Highcharts, Highstock, Gantt) An array of lines stretching across the * plot area, marking a specific value on one of the axes. * * In styled mode, the plot lines are styled by the `.highcharts-plot-line` * class in addition to the `className` option. */ plotLines?: Array<ZAxisPlotLinesOptions>; /** * (Highstock) The zoomed range to display when only defining one or none of * `min` or `max`. For example, to show the latest month, a range of one * month can be set. */ range?: number; /** * (Highcharts) Whether to reverse the axis so that the highest number is * closest to the origin. If the chart is inverted, the x axis is reversed * by default. */ reversed?: boolean; /** * (Highcharts, Highstock) This option determines how stacks should be * ordered within a group. For example reversed xAxis also reverses stacks, * so first series comes last in a group. To keep order like for * non-reversed xAxis enable this option. */ reversedStacks?: boolean; /** * (Highstock) An optional scrollbar to display on the X axis in response to * limiting the minimum and maximum of the axis values. * * In styled mode, all the presentational options for the scrollbar are * replaced by the classes `.highcharts-scrollbar-thumb`, * `.highcharts-scrollbar-arrow`, `.highcharts-scrollbar-button`, * `.highcharts-scrollbar-rifles` and `.highcharts-scrollbar-track`. */ scrollbar?: ZAxisScrollbarOptions; /** * (Highcharts) Whether to show the first tick label. */ showFirstLabel?: boolean; /** * (Highcharts, Highstock, Gantt) Whether to show the last tick label. * Defaults to `true` on cartesian charts, and `false` on polar charts. */ showLastLabel?: boolean; /** * (Highcharts, Highstock, Gantt) A soft maximum for the axis. If the series * data maximum is less than this, the axis will stay at this maximum, but * if the series data maximum is higher, the axis will flex to show all * data. */ softMax?: number; /** * (Highcharts, Highstock, Gantt) A soft minimum for the axis. If the series * data minimum is greater than this, the axis will stay at this minimum, * but if the series data minimum is lower, the axis will flex to show all * data. */ softMin?: number; /** * (Highcharts, Highstock, Gantt) For datetime axes, this decides where to * put the tick between weeks. 0 = Sunday, 1 = Monday. */ startOfWeek?: number; /** * (Highcharts) Whether to force the axis to start on a tick. Use this * option with the `minPadding` option to control the axis start. */ startOnTick?: boolean; /** * (Highcharts, Highstock, Gantt) The amount of ticks to draw on the axis. * This opens up for aligning the ticks of multiple charts or panes within a * chart. This option overrides the `tickPixelInterval` option. * * This option only has an effect on linear axes. Datetime, logarithmic or * category axes are not affected. */ tickAmount?: number; /** * (Highcharts) Color for the main tick marks. * * In styled mode, the stroke is given in the `.highcharts-tick` class. */ tickColor?: ColorString; /** * (Highcharts) The interval of the tick marks in axis units. When * `undefined`, the tick interval is computed to approximately follow the * tickPixelInterval on linear and datetime axes. On categorized axes, a * `undefined` tickInterval will default to 1, one category. Note that * datetime axes are based on milliseconds, so for example an interval of * one day is expressed as `24 * 3600 * 1000`. * * On logarithmic axes, the tickInterval is based on powers, so a * tickInterval of 1 means one tick on each of 0.1, 1, 10, 100 etc. A * tickInterval of 2 means a tick of 0.1, 10, 1000 etc. A tickInterval of * 0.2 puts a tick on 0.1, 0.2, 0.4, 0.6, 0.8, 1, 2, 4, 6, 8, 10, 20, 40 * etc. * * If the tickInterval is too dense for labels to be drawn, Highcharts may * remove ticks. * * If the chart has multiple axes, the alignTicks option may interfere with * the `tickInterval` setting. */ tickInterval?: number; /** * (Highcharts) The pixel length of the main tick marks. */ tickLength?: number; /** * (Highcharts, Gantt) For categorized axes only. If `on` the tick mark is * placed in the center of the category, if `between` the tick mark is * placed between categories. The default is `between` if the `tickInterval` * is 1, else `on`. */ tickmarkPlacement?: OptionsTickmarkPlacementValue; /** * (Highcharts) If tickInterval is `null` this option sets the approximate * pixel interval of the tick marks. Not applicable to categorized axis. * * The tick interval is also influenced by the minTickInterval option, that, * by default prevents ticks from being denser than the data points. */ tickPixelInterval?: number; /** * (Highcharts) The position of the major tick marks relative to the axis * line. Can be one of `inside` and `outside`. */ tickPosition?: OptionsTickPositionValue; /** * (Highcharts) A callback function returning array defining where the ticks * are laid out on the axis. This overrides the default behaviour of * tickPixelInterval and tickInterval. The automatic tick positions are * accessible through `this.tickPositions` and can be modified by the * callback. */ tickPositioner?: AxisTickPositionerCallbackFunction; /** * (Highcharts) An array defining where the ticks are laid out on the axis. * This overrides the default behaviour of tickPixelInterval and * tickInterval. */ tickPositions?: Array<number>; /** * (Highcharts) The pixel width of the major tick marks. Defaults to 0 on * category axes, otherwise 1. * * In styled mode, the stroke width is given in the `.highcharts-tick` * class. */ tickWidth?: (number|undefined); /** * (Highcharts) The axis title, showing next to the axis line. */ title?: ZAxisTitleOptions; /** * (Highcharts, Gantt) The type of axis. Can be one of `linear`, * `logarithmic`, `datetime` or `category`. In a datetime axis, the numbers * are given in milliseconds, and tick marks are placed on appropriate * values like full hours or days. In a category axis, the point names of * the chart's series are used for categories, if not a categories array is * defined. */ type?: AxisTypeValue; /** * (Highcharts, Gantt) Applies only when the axis `type` is `category`. When * `uniqueNames` is true, points are placed on the X axis according to their * names. If the same point name is repeated in the same or another series, * the point is placed on the same X position as other points of the same * name. When `uniqueNames` is false, the points are laid out in increasing * X positions regardless of their names, and the X axis category will take * the name of the last point in each position. */ uniqueNames?: boolean; /** * (Highcharts, Highstock, Gantt) Datetime axis only. An array determining * what time intervals the ticks are allowed to fall on. Each array item is * an array where the first value is the time unit and the second value * another array of allowed multiples. Defaults to: * * (see online documentation for example) */ units?: Array<[string, (Array<number>|null)]>; /** * (Highcharts, Highstock, Gantt) Whether axis, including axis title, line, * ticks and labels, should be visible. */ visible?: boolean; } /** * (Highcharts, Highstock, Gantt) Text labels for the plot bands */ export interface ZAxisPlotBandsLabelOptions { /** * (Highcharts, Highstock, Gantt) Horizontal alignment of the label. Can be * one of "left", "center" or "right". */ align?: AlignValue; /** * (Highcharts, Highstock, Gantt) Rotation of the text label in degrees . */ rotation?: number; /** * (Highcharts, Highstock, Gantt) CSS styles for the text label. * * In styled mode, the labels are styled by the * `.highcharts-plot-band-label` class. */ style?: CSSObject; /** * (Highcharts, Highstock, Gantt) The string text itself. A subset of HTML * is supported. */ text?: string; /** * (Highcharts, Highstock, Gantt) The text alignment for the label. While * `align` determines where the texts anchor point is placed within the plot * band, `textAlign` determines how the text is aligned against its anchor * point. Possible values are "left", "center" and "right". Defaults to the * same as the `align` option. */ textAlign?: AlignValue; /** * (Highcharts, Highstock, Gantt) Whether to use HTML to render the labels. */ useHTML?: boolean; /** * (Highcharts, Highstock, Gantt) Vertical alignment of the label relative * to the plot band. Can be one of "top", "middle" or "bottom". */ verticalAlign?: VerticalAlignValue; /** * (Highcharts, Highstock, Gantt) Horizontal position relative the * alignment. Default varies by orientation. */ x?: number; /** * (Highcharts, Highstock, Gantt) Vertical position of the text baseline * relative to the alignment. Default varies by orientation. */ y?: number; } /** * (Highcharts, Highstock, Gantt) An array of colored bands stretching across * the plot area marking an interval on the axis. * * In styled mode, the plot bands are styled by the `.highcharts-plot-band` * class in addition to the `className` option. */ export interface ZAxisPlotBandsOptions { /** * (Highcharts, Highstock, Gantt) Border color for the plot band. Also * requires `borderWidth` to be set. */ borderColor?: ColorString; /** * (Highcharts, Highstock, Gantt) Border width for the plot band. Also * requires `borderColor` to be set. */ borderWidth?: number; /** * (Highcharts, Highstock, Gantt) A custom class name, in addition to the * default `highcharts-plot-band`, to apply to each individual band. */ className?: string; /** * (Highcharts, Highstock, Gantt) The color of the plot band. */ color?: (ColorString|GradientColorObject|PatternObject); /** * (Highcharts, Highstock, Gantt) An object defining mouse events for the * plot band. Supported properties are `click`, `mouseover`, `mouseout`, * `mousemove`. */ events?: any; /** * (Highcharts, Highstock, Gantt) The start position of the plot band in * axis units. */ from?: number; /** * (Highcharts, Highstock, Gantt) An id used for identifying the plot band * in Axis.removePlotBand. */ id?: string; /** * (Highcharts, Highstock, Gantt) Text labels for the plot bands */ label?: ZAxisPlotBandsLabelOptions; /** * (Highcharts, Highstock, Gantt) The end position of the plot band in axis * units. */ to?: number; /** * (Highcharts, Highstock, Gantt) The z index of the plot band within the * chart, relative to other elements. Using the same z index as another * element may give unpredictable results, as the last rendered element will * be on top. Values from 0 to 20 make sense. */ zIndex?: number; } /** * (Highcharts, Highstock, Gantt) Text labels for the plot bands */ export interface ZAxisPlotLinesLabelOptions { /** * (Highcharts, Highstock, Gantt) Horizontal alignment of the label. Can be * one of "left", "center" or "right". */ align?: AlignValue; /** * (Highcharts, Highstock, Gantt) Rotation of the text label in degrees. * Defaults to 0 for horizontal plot lines and 90 for vertical lines. */ rotation?: number; /** * (Highcharts, Highstock, Gantt) CSS styles for the text label. * * In styled mode, the labels are styled by the * `.highcharts-plot-line-label` class. */ style?: CSSObject; /** * (Highcharts, Highstock, Gantt) The text itself. A subset of HTML is * supported. */ text?: string; /** * (Highcharts, Highstock, Gantt) The text alignment for the label. While * `align` determines where the texts anchor point is placed within the plot * band, `textAlign` determines how the text is aligned against its anchor * point. Possible values are "left", "center" and "right". Defaults to the * same as the `align` option. */ textAlign?: AlignValue; /** * (Highcharts, Highstock, Gantt) Whether to use HTML to render the labels. */ useHTML?: boolean; /** * (Highcharts, Highstock, Gantt) Vertical alignment of the label relative * to the plot line. Can be one of "top", "middle" or "bottom". */ verticalAlign?: VerticalAlignValue; /** * (Highcharts, Highstock, Gantt) Horizontal position relative the * alignment. Default varies by orientation. */ x?: number; /** * (Highcharts, Highstock, Gantt) Vertical position of the text baseline * relative to the alignment. Default varies by orientation. */ y?: number; } /** * (Highcharts, Highstock, Gantt) An array of lines stretching across the plot * area, marking a specific value on one of the axes. * * In styled mode, the plot lines are styled by the `.highcharts-plot-line` * class in addition to the `className` option. */ export interface ZAxisPlotLinesOptions { /** * (Highcharts, Highstock, Gantt) A custom class name, in addition to the * default `highcharts-plot-line`, to apply to each individual line. */ className?: string; /** * (Highcharts, Highstock, Gantt) The color of the line. */ color?: ColorString; /** * (Highcharts, Highstock, Gantt) The dashing or dot style for the plot * line. For possible values see this overview. */ dashStyle?: DashStyleValue; /** * (Highcharts, Highstock, Gantt) An object defining mouse events for the * plot line. Supported properties are `click`, `mouseover`, `mouseout`, * `mousemove`. */ events?: any; /** * (Highcharts, Highstock, Gantt) An id used for identifying the plot line * in Axis.removePlotLine. */ id?: string; /** * (Highcharts, Highstock, Gantt) Text labels for the plot bands */ label?: ZAxisPlotLinesLabelOptions; /** * (Highcharts, Highstock, Gantt) The position of the line in axis units. */ value?: number; /** * (Highcharts, Highstock, Gantt) The width or thickness of the plot line. */ width?: number; /** * (Highcharts, Highstock, Gantt) The z index of the plot line within the * chart. */ zIndex?: number; } /** * (Highstock) An optional scrollbar to display on the X axis in response to * limiting the minimum and maximum of the axis values. * * In styled mode, all the presentational options for the scrollbar are replaced * by the classes `.highcharts-scrollbar-thumb`, `.highcharts-scrollbar-arrow`, * `.highcharts-scrollbar-button`, `.highcharts-scrollbar-rifles` and * `.highcharts-scrollbar-track`. */ export interface ZAxisScrollbarOptions { /** * (Highstock) The background color of the scrollbar itself. */ barBackgroundColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the scrollbar's border. */ barBorderColor?: ColorString; /** * (Highstock) The border rounding radius of the bar. */ barBorderRadius?: number; /** * (Highstock) The width of the bar's border. */ barBorderWidth?: number; /** * (Highstock) The color of the small arrow inside the scrollbar buttons. */ buttonArrowColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of scrollbar buttons. */ buttonBackgroundColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the border of the scrollbar buttons. */ buttonBorderColor?: ColorString; /** * (Highstock) The corner radius of the scrollbar buttons. */ buttonBorderRadius?: number; /** * (Highstock) The border width of the scrollbar buttons. */ buttonBorderWidth?: number; /** * (Highstock) Enable or disable the scrollbar. */ enabled?: boolean; /** * (Highstock) The height of the scrollbar. The height also applies to the * width of the scroll arrows so that they are always squares. Defaults to * 20 for touch devices and 14 for mouse devices. */ height?: number; /** * (Highstock) Whether to redraw the main chart as the scrollbar or the * navigator zoomed window is moved. Defaults to `true` for modern browsers * and `false` for legacy IE browsers as well as mobile devices. */ liveRedraw?: boolean; /** * (Highstock) The margin between the scrollbar and its axis when the * scrollbar is applied directly to an axis. */ margin?: number; /** * (Highstock) The minimum width of the scrollbar. */ minWidth?: number; /** * (Highstock) The color of the small rifles in the middle of the scrollbar. */ rifleColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) Whether to show or hide the scrollbar when the scrolled * content is zoomed out to it full extent. */ showFull?: boolean; step?: number; /** * (Highstock) The color of the track background. */ trackBackgroundColor?: (ColorString|GradientColorObject|PatternObject); /** * (Highstock) The color of the border of the scrollbar track. */ trackBorderColor?: ColorString; /** * (Highstock) The corner radius of the border of the scrollbar track. */ trackBorderRadius?: number; /** * (Highstock) The width of the border of the scrollbar track. */ trackBorderWidth?: number; /** * (Highstock) The z index of the scrollbar group. */ zIndex?: number; } /** * (Highcharts) The axis title, showing next to the axis line. */ export interface ZAxisTitleOptions { /** * (Highcharts) Alignment of the title relative to the axis values. Possible * values are "low", "middle" or "high". */ align?: AxisTitleAlignValue; /** * (Highcharts) Deprecated. Set the `text` to `null` to disable the title. */ enabled?: string; /** * (Highcharts) The pixel distance between the axis labels or line and the * title. Defaults to 0 for horizontal axes, 10 for vertical */ margin?: number; /** * (Highcharts) The distance of the axis title from the axis line. By * default, this distance is computed from the offset width of the labels, * the labels' distance from the axis and the title's margin. However when * the offset option is set, it overrides all this. */ offset?: number; /** * (Highcharts) Defines how the title is repositioned according to the 3D * chart orientation. * * - `'offset'`: Maintain a fixed horizontal/vertical distance from the tick * marks, despite the chart orientation. This is the backwards compatible * behavior, and causes skewing of X and Z axes. * * - `'chart'`: Preserve 3D position relative to the chart. This looks nice, * but hard to read if the text isn't forward-facing. * * - `'flap'`: Rotated text along the axis to compensate for the chart * orientation. This tries to maintain text as legible as possible on all * orientations. * * - `'ortho'`: Rotated text along the axis direction so that the labels are * orthogonal to the axis. This is very similar to `'flap'`, but prevents * skewing the labels (X and Y scaling are still present). * * - `undefined`: Will use the config from `labels.position3d` */ position3d?: ("chart"|"flap"|"offset"|"ortho"|null); /** * (Highcharts, Highstock, Gantt) Whether to reserve space for the title * when laying out the axis. */ reserveSpace?: boolean; /** * (Highcharts) The rotation of the text in degrees. 0 is horizontal, 270 is * vertical reading from bottom to top. */ rotation?: number; /** * (Highcharts) If enabled, the axis title will skewed to follow the * perspective. * * This will fix overlapping labels and titles, but texts become less * legible due to the distortion. * * The final appearance depends heavily on `title.position3d`. * * A `null` value will use the config from `labels.skew3d`. */ skew3d?: (boolean|null); /** * (Highcharts) CSS styles for the title. If the title text is longer than * the axis length, it will wrap to multiple lines by default. This can be * customized by setting `textOverflow: 'ellipsis'`, by setting a specific * `width` or by setting `whiteSpace: 'nowrap'`. * * In styled mode, the stroke width is given in the `.highcharts-axis-title` * class. */ style?: CSSObject; /** * (Highcharts) The actual text of the axis title. It can contain basic HTML * text markup like <b>, <i> and spans with style. */ text?: (string|null); /** * (Highcharts) Alignment of the text, can be `"left"`, `"right"` or * `"center"`. Default alignment depends on the title.align: * * Horizontal axes: * * - for `align` = `"low"`, `textAlign` is set to `left` * * - for `align` = `"middle"`, `textAlign` is set to `center` * * - for `align` = `"high"`, `textAlign` is set to `right` * * Vertical axes: * * - for `align` = `"low"` and `opposite` = `true`, `textAlign` is set to * `right` * * - for `align` = `"low"` and `opposite` = `false`, `textAlign` is set to * `left` * * - for `align` = `"middle"`, `textAlign` is set to `center` * * - for `align` = `"high"` and `opposite` = `true` `textAlign` is set to * `left` * * - for `align` = `"high"` and `opposite` = `false` `textAlign` is set to * `right` */ textAlign?: AlignValue; /** * (Highcharts, Highstock, Gantt) Whether to use HTML to render the axis * title. */ useHTML?: boolean; /** * (Highcharts, Highstock, Gantt) Horizontal pixel offset of the title * position. */ x?: number; /** * (Highcharts, Highstock, Gantt) Vertical pixel offset of the title * position. */ y?: number; } /** * Create a new axis object. Called internally when instanciating a new chart or * adding axes by Highcharts.Chart#addAxis. * * A chart can have from 0 axes (pie chart) to multiples. In a normal, single * series cartesian chart, there is one X axis and one Y axis. * * The X axis or axes are referenced by Highcharts.Chart.xAxis, which is an * array of Axis objects. If there is only one axis, it can be referenced * through `chart.xAxis[0]`, and multiple axes have increasing indices. The same * pattern goes for Y axes. * * If you need to get the axes from a series object, use the `series.xAxis` and * `series.yAxis` properties. These are not arrays, as one series can only be * associated to one X and one Y axis. * * A third way to reference the axis programmatically is by `id`. Add an `id` in * the axis configuration options, and get the axis by Highcharts.Chart#get. * * Configuration options for the axes are given in options.xAxis and * options.yAxis. */ export class Axis { /** * Create a new axis object. Called internally when instanciating a new * chart or adding axes by Highcharts.Chart#addAxis. * * A chart can have from 0 axes (pie chart) to multiples. In a normal, * single series cartesian chart, there is one X axis and one Y axis. * * The X axis or axes are referenced by Highcharts.Chart.xAxis, which is an * array of Axis objects. If there is only one axis, it can be referenced * through `chart.xAxis[0]`, and multiple axes have increasing indices. The * same pattern goes for Y axes. * * If you need to get the axes from a series object, use the `series.xAxis` * and `series.yAxis` properties. These are not arrays, as one series can * only be associated to one X and one Y axis. * * A third way to reference the axis programmatically is by `id`. Add an * `id` in the axis configuration options, and get the axis by * Highcharts.Chart#get. * * Configuration options for the axes are given in options.xAxis and * options.yAxis. * * @param chart * The Chart instance to apply the axis on. * * @param options * Axis options. */ constructor(chart: Chart, options: AxisOptions); /** * The Chart that the axis belongs to. */ chart: Chart; /** * The collection where the axis belongs, for example `xAxis`, `yAxis` or * `colorAxis`. Corresponds to properties on Chart, for example Chart.xAxis. */ coll: string; /** * The processed crosshair options. */ crosshair: (boolean|AxisCrosshairOptions); /** * Whether the axis is horizontal. */ horiz: boolean; /** * Whether the axis is the x-axis. */ isXAxis?: boolean; /** * The maximum value of the axis. In a logarithmic axis, this is the * logarithm of the real value, and the real value can be obtained from * Axis#getExtremes. */ max: (number|null); /** * The minimum value of the axis. In a logarithmic axis, this is the * logarithm of the real value, and the real value can be obtained from * Axis#getExtremes. */ min: (number|null); /** * Whether the axis is reversed. Based on the `axis.reversed`, option, but * inverted charts have reversed xAxis by default. */ reversed: boolean; /** * All series associated to the axis. */ series: Array<Series>; /** * The side on which the axis is rendered. 0 is top, 1 is right, 2 is bottom * and 3 is left. */ side: number; /** * Contains the current positions that are laid out on the axis. The * positions are numbers in terms of axis values. In a category axis they * are integers, in a datetime axis they are also integers, but designating * milliseconds. * * This property is read only - for modifying the tick positions, use the * `tickPositioner` callback or [axis.tickPositions( * https://api.highcharts.com/highcharts/xAxis.tickPositions) option * instead. */ tickPositions?: Array<number>; /** * Add a plot band after render time. * * @param options * A configuration object for the plot band, as defined in * xAxis.plotBands. * * @return The added plot band. */ addPlotBand(options: AxisPlotBandsOptions): (PlotLineOrBand|undefined); /** * Add a plot line after render time. * * @param options * A configuration object for the plot line, as defined in * xAxis.plotLines. * * @return The added plot line. */ addPlotLine(options: AxisPlotLinesOptions): (PlotLineOrBand|undefined); /** * Adds the title defined in axis.options.title. * * @param display * Whether or not to display the title. */ addTitle(display: boolean): void; /** * Internal function to draw a crosshair. * * @param e * The event arguments from the modified pointer event, extended with * `chartX` and `chartY` * * @param point * The Point object if the crosshair snaps to points. * * @fires Highcharts.Axis#afterDrawCrosshair * @fires Highcharts.Axis#drawCrosshair */ drawCrosshair(e?: PointerEventObject, point?: Point): void; /** * Get the current extremes for the axis. * * @return An object containing extremes information. */ getExtremes(): ExtremesObject; /** * Internal function to et the tick positions of a linear axis to round * values like whole tens or every five. * * @param tickInterval * The normalized tick interval. * * @param min * Axis minimum. * * @param max * Axis maximum. * * @return An array of axis values where ticks should be placed. */ getLinearTickPositions(tickInterval: number, min: number, max: number): Array<number>; /** * Internal function to get the path for the axis line. Extended for polar * charts. * * @param lineWidth * The line width in pixels. * * @return The SVG path definition in array form. */ getLinePath(lineWidth: number): SVGPathArray; /** * Resolve the new minorTicks/minorTickInterval options into the legacy * loosely typed minorTickInterval option. */ getMinorTickInterval(): ("auto"|number|null); /** * Internal function to return the minor tick positions. For logarithmic * axes, the same logic as for major ticks is reused. * * @return An array of axis values where ticks should be placed. */ getMinorTickPositions(): Array<number>; /** * Internal function to create the SVG path definition for a plot band. * * @param from * The axis value to start from. * * @param to * The axis value to end on. * * @return The SVG path definition in array form. */ getPlotBandPath(from: number, to: number): SVGPathArray; /** * Create the path for a plot line that goes from the given value on this * axis, across the plot to the opposite side. Also used internally for grid * lines and crosshairs. * * @param value * Axis value. * * @param lineWidth * Used for calculation crisp line coordinates. * * @param old * Use old coordinates (for resizing and rescaling). * * @param force * If `false`, the function will return null when it falls outside * the axis bounds. If `true`, the function will return a path * aligned to the plot area sides if it falls outside. If `pass`, it * will return a path outside. * * @param translatedValue * If given, return the plot line path of a pixel position on the * axis. * * @return The SVG path definition for the plot line. */ getPlotLinePath(value: number, lineWidth?: number, old?: boolean, force?: (boolean|string), translatedValue?: number): Array<(string|number)>; /** * Get the zero plane either based on zero or on the min or max value. Used * in bar and area plots. * * @param threshold * The threshold in axis values. * * @return The translated threshold position in terms of pixels, and * corrected to stay within the axis bounds. */ getThreshold(threshold: number): number; /** * Return true if the axis has associated data. * * @return True if the axis has associated visible series and those series * have either valid data points or explicit `min` and `max` * settings. */ hasData(): boolean; /** * Hide the crosshair if visible. */ hideCrosshair(): void; /** * Overrideable function to initialize the axis. * * @fires Highcharts.Axis#afterInit * @fires Highcharts.Axis#init */ init(chart: Chart, userOptions: Options): void; /** * Remove the axis from the chart. * * @param redraw * Whether to redraw the chart following the remove. */ remove(redraw?: boolean): void; /** * Remove a plot band by its id. * * @param id * The plot band's `id` as given in the original configuration object * or in the `addPlotBand` option. */ removePlotBand(id: string): void; /** * Remove a plot line by its id. * * @param id * The plot line's `id` as given in the original configuration object * or in the `addPlotLine` option. */ removePlotLine(id: string): void; /** * Render the axis line. Called internally when rendering and redrawing the * axis. */ renderLine(): void; /** * Render a minor tick into the given position. If a minor tick already * exists in this position, move it. * * @param pos * The position in axis values. */ renderMinorTick(pos: number): void; /** * Render a major tick into the given position. If a tick already exists in * this position, move it. * * @param pos * The position in axis values. * * @param i * The tick index. */ renderTick(pos: number, i: number): void; /** * Set new axis categories and optionally redraw. * * @param categories * The new categories. * * @param redraw * Whether to redraw the chart. */ setCategories(categories: Array<string>, redraw?: boolean): void; /** * Set the minimum and maximum of the axes after render time. If the * `startOnTick` and `endOnTick` options are true, the minimum and maximum * values are rounded off to the nearest tick. To prevent this, these * options can be set to false before calling setExtremes. Also, setExtremes * will not allow a range lower than the `minRange` option, which by default * is the range of five points. * * @param newMin * The new minimum value. * * @param newMax * The new maximum value. * * @param redraw * Whether to redraw the chart or wait for an explicit call to * Highcharts.Chart#redraw * * @param animation * Enable or modify animations. * * @param eventArguments * Arguments to be accessed in event handler. * * @fires Highcharts.Axis#setExtremes */ setExtremes(newMin?: number, newMax?: number, redraw?: boolean, animation?: (boolean|AnimationOptionsObject), eventArguments?: any): void; /** * Now we have computed the normalized tickInterval, get the tick positions * * @fires Highcharts.Axis#afterSetTickPositions */ setTickPositions(): void; /** * Update the axis title by options after render time. * * @param titleOptions * The additional title options. * * @param redraw * Whether to redraw the chart after setting the title. */ setTitle(titleOptions: (XAxisTitleOptions|YAxisTitleOptions|ZAxisTitleOptions), redraw?: boolean): void; /** * Translate a value in terms of axis units into pixels within the chart. * * @param value * A value in terms of axis units. * * @param paneCoordinates * Whether to return the pixel coordinate relative to the chart or * just the axis/pane itself. * * @return Pixel position of the value on the chart or axis. */ toPixels(value: number, paneCoordinates: boolean): number; /** * Translate a pixel position along the axis to a value in terms of axis * units. * * @param pixel * The pixel value coordinate. * * @param paneCoordiantes * Whether the input pixel is relative to the chart or just the * axis/pane itself. * * @return The axis value. */ toValue(pixel: number, paneCoordiantes: boolean): number; /** * Update an axis object with a new set of options. The options are merged * with the existing options, so only new or altered options need to be * specified. * * @param options * The new options that will be merged in with existing options on * the axis. * * @param redraw * Whether to redraw the chart after the axis is altered. If doing * more operations on the chart, it is a good idea to set redraw to * false and call Chart#redraw after. */ update(options: (XAxisOptions|YAxisOptions|ZAxisOptions), redraw?: boolean): void; } /** * The Chart class. The recommended constructor is Highcharts#chart. */ export class Chart { /** * The Chart class. The recommended constructor is Highcharts#chart. * * @param options * The chart options structure. * * @param callback * Function to run when the chart has loaded and and all external * images are loaded. Defining a chart.events.load handler is * equivalent. */ constructor(options: Options, callback?: ChartCallbackFunction); /** * The Chart class. The recommended constructor is Highcharts#chart. * * @param renderTo * The DOM element to render to, or its id. * * @param options * The chart options structure. * * @param callback * Function to run when the chart has loaded and and all external * images are loaded. Defining a chart.events.load handler is * equivalent. */ constructor(renderTo: (string|HTMLDOMElement), options: Options, callback?: ChartCallbackFunction); /** * All the axes in the chart. */ axes: Array<Axis>; /** * The current pixel height of the chart. */ chartHeight: number; /** * The current pixel width of the chart. */ chartWidth: number; /** * These collections (arrays) implement update() methods with support for * one-to-one option. */ collectionsWithUpdate: any; /** * The containing HTML element of the chart. The container is dynamically * inserted into the element given as the `renderTo` parameter in the * Highcharts#chart constructor. */ container: HTMLDOMElement; /** * The chart's credits label. The label has an `update` method that allows * setting new options as per the credits options set. */ credits: SVGElement; /** * Contains the original hovered point. */ hoverPoint: (Point|null); /** * Contains all hovered points. */ hoverPoints: (Array<Point>|null); /** * Contains the original hovered series. */ hoverSeries: (Series|null); /** * Index position of the chart in the Highcharts#charts property. */ index: number; /** * The flag is set to `true` if a series of the chart is inverted. */ inverted?: boolean; /** * The overview of the chart's series. */ legend: Legend; /** * The options structure for the chart after merging #defaultOptions and * #userOptions. It contains members for the sub elements like series, * legend, tooltip etc. */ options: Options; /** * The current height of the plot area in pixels. */ plotHeight: number; /** * The current left position of the plot area in pixels. */ plotLeft: number; /** * The current top position of the plot area in pixels. */ plotTop: number; /** * The current width of the plot area in pixels. */ plotWidth: number; /** * The Pointer that keeps track of mouse and touch interaction. */ pointer: Pointer; /** * These properties cause isDirtyBox to be set to true when updating. Can be * extended from plugins. */ propsRequireDirtyBox: any; /** * These properties require a full reflow of chart elements, best * implemented through running `Chart.setSize` internally (#8190). */ propsRequireReflow: any[]; /** * These properties cause all series to be updated when updating. Can be * extended from plugins. */ propsRequireUpdateSeries: any; /** * The renderer instance of the chart. Each chart instance has only one * associated renderer. */ renderer: SVGRenderer; /** * All the current series in the chart. */ series: Array<Series>; /** * Whether the chart is in styled mode, meaning all presentatinoal * attributes are avoided. */ styledMode: boolean; /** * The chart subtitle. The subtitle has an `update` method that allows * modifying the options directly or indirectly via `chart.update`. */ subtitle: SubtitleObject; /** * The `Time` object associated with the chart. Since v6.0.5, time settings * can be applied individually for each chart. If no individual settings * apply, the `Time` object is shared by all instances. */ time: Time; /** * The chart title. The title has an `update` method that allows modifying * the options directly or indirectly via `chart.update`. */ title: TitleObject; /** * Tooltip object for points of series. */ tooltip: Tooltip; /** * The original options given to the constructor or a chart factory like * Highcharts.chart and Highcharts.stockChart. */ userOptions: Options; /** * A collection of the X axes in the chart. */ xAxis: Array<Axis>; /** * A collection of the Y axes in the chart. */ yAxis: Array<Axis>; /** * Add an axis to the chart after render time. Note that this method should * never be used when adding data synchronously at chart render time, as it * adds expense to the calculations and rendering. When adding data at the * same time as the chart is initialized, add the axis as a configuration * option instead. * * @param options * The axis options. * * @param isX * Whether it is an X axis or a value axis. * * @param redraw * Whether to redraw the chart after adding. * * @param animation * Whether and how to apply animation in the redraw. * * @return The newly generated Axis object. */ addAxis(options: (XAxisOptions|YAxisOptions|ZAxisOptions), isX?: boolean, redraw?: boolean, animation?: (boolean|AnimationOptionsObject)): Axis; /** * Set a new credits label for the chart. * * @param options * A configuration object for the new credits. */ addCredits(options: CreditsOptions): void; /** * Add a series to the chart after render time. Note that this method should * never be used when adding data synchronously at chart render time, as it * adds expense to the calculations and rendering. When adding data at the * same time as the chart is initialized, add the series as a configuration * option instead. With multiple axes, the `offset` is dynamically adjusted. * * @param options * The config options for the series. * * @param redraw * Whether to redraw the chart after adding. * * @param animation * Whether to apply animation, and optionally animation * configuration. * * @return The newly created series object. * * @fires Highcharts.Chart#addSeries * @fires Highcharts.Chart#afterAddSeries */ addSeries(options: SeriesOptionsType, redraw?: boolean, animation?: (boolean|AnimationOptionsObject)): Series; /** * Remove the chart and purge memory. This method is called internally * before adding a second chart into the same container, as well as on * window unload to prevent leaks. * * @fires Highcharts.Chart#destroy */ destroy(): void; /** * Get an axis, series or point object by `id` as given in the configuration * options. Returns `undefined` if no item is found. * * @param id * The id as given in the configuration options. * * @return The retrieved item. */ get(id: string): (Axis|Point|Series|undefined); /** * Returns an array of all currently selected points in the chart. Points * can be selected by clicking or programmatically by the * Highcharts.Point#select function. * * @return The currently selected points. */ getSelectedPoints(): Array<Point>; /** * Returns an array of all currently selected series in the chart. Series * can be selected either programmatically by the Highcharts.Series#select * function or by checking the checkbox next to the legend item if * series.showCheckBox is true. * * @return The currently selected series. */ getSelectedSeries(): Array<Series>; /** * Hide the loading layer. */ hideLoading(): void; /** * Overridable function that initializes the chart. The constructor's * arguments are passed on directly. * * @param userOptions * Custom options. * * @param callback * Function to run when the chart has loaded and and all external * images are loaded. * * @fires Highcharts.Chart#init * @fires Highcharts.Chart#afterInit */ init(userOptions: Options, callback?: Function): void; /** * Check whether a given point is within the plot area. * * @param plotX * Pixel x relative to the plot area. * * @param plotY * Pixel y relative to the plot area. * * @param inverted * Whether the chart is inverted. * * @return Returns true if the given point is inside the plot area. */ isInsidePlot(plotX: number, plotY: number, inverted?: boolean): boolean; /** * Redraw the chart after changes have been done to the data, axis extremes * chart size or chart elements. All methods for updating axes, series or * points have a parameter for redrawing the chart. This is `true` by * default. But in many cases you want to do more than one operation on the * chart before redrawing, for example add a number of points. In those * cases it is a waste of resources to redraw the chart for each new point * added. So you add the points and call `chart.redraw()` after. * * @param animation * If or how to apply animation to the redraw. * * @fires Highcharts.Chart#afterSetExtremes * @fires Highcharts.Chart#beforeRedraw * @fires Highcharts.Chart#predraw * @fires Highcharts.Chart#redraw * @fires Highcharts.Chart#render * @fires Highcharts.Chart#updatedData */ redraw(animation?: (boolean|AnimationOptionsObject)): void; /** * Reflows the chart to its container. By default, the chart reflows * automatically to its container following a `window.resize` event, as per * the chart.reflow option. However, there are no reliable events for div * resize, so if the container is resized without a window resize event, * this must be called explicitly. * * @param e * Event arguments. Used primarily when the function is called * internally as a response to window resize. */ reflow(e?: Event): void; /** * Set the chart container's class name, in addition to * `highcharts-container`. */ setClassName(className: string): void; /** * Resize the chart to a given width and height. In order to set the width * only, the height argument may be skipped. To set the height only, pass * `undefined` for the width. * * @param width * The new pixel width of the chart. Since v4.2.6, the argument can * be `undefined` in order to preserve the current value (when * setting height only), or `null` to adapt to the width of the * containing element. * * @param height * The new pixel height of the chart. Since v4.2.6, the argument can * be `undefined` in order to preserve the current value, or `null` * in order to adapt to the height of the containing element. * * @param animation * Whether and how to apply animation. * * @fires Highcharts.Chart#endResize * @fires Highcharts.Chart#resize */ setSize(width?: (number|null), height?: (number|null), animation?: AnimationOptionsObject): void; /** * Shortcut to set the subtitle options. This can also be done from * Chart#update or Chart#setTitle. * * @param options * New subtitle options. The subtitle text itself is set by the * `options.text` property. */ setSubtitle(options: SubtitleOptions): void; /** * Set a new title or subtitle for the chart. * * @param titleOptions * New title options. The title text itself is set by the * `titleOptions.text` property. * * @param subtitleOptions * New subtitle options. The subtitle text itself is set by the * `subtitleOptions.text` property. * * @param redraw * Whether to redraw the chart or wait for a later call to * `chart.redraw()`. */ setTitle(titleOptions: TitleOptions, subtitleOptions: SubtitleOptions, redraw: boolean): void; /** * Dim the chart and show a loading text or symbol. Options for the loading * screen are defined in the loading options. * * @param str * An optional text to show in the loading label instead of the * default one. The default text is set in lang.loading. */ showLoading(str?: string): void; /** * A generic function to update any element of the chart. Elements can be * enabled and disabled, moved, re-styled, re-formatted etc. * * A special case is configuration objects that take arrays, for example * xAxis, yAxis or series. For these collections, an `id` option is used to * map the new option set to an existing object. If an existing object of * the same id is not found, the corresponding item is updated. So for * example, running `chart.update` with a series item without an id, will * cause the existing chart's series with the same index in the series array * to be updated. When the `oneToOne` parameter is true, `chart.update` will * also take care of adding and removing items from the collection. Read * more under the parameter description below. * * Note that when changing series data, `chart.update` may mutate the passed * data options. * * See also the responsive option set. Switching between `responsive.rules` * basically runs `chart.update` under the hood. * * @param options * A configuration object for the new chart options. * * @param redraw * Whether to redraw the chart. * * @param oneToOne * When `true`, the `series`, `xAxis` and `yAxis` collections will be * updated one to one, and items will be either added or removed to * match the new updated options. For example, if the chart has two * series and we call `chart.update` with a configuration containing * three series, one will be added. If we call `chart.update` with * one series, one will be removed. Setting an empty `series` array * will remove all series, but leaving out the `series` property will * leave all series untouched. If the series have id's, the new * series options will be matched by id, and the remaining ones * removed. * * @param animation * Whether to apply animation, and optionally animation * configuration. * * @fires Highcharts.Chart#update * @fires Highcharts.Chart#afterUpdate */ update(options: Options, redraw?: boolean, oneToOne?: boolean, animation?: (boolean|AnimationOptionsObject)): void; /** * Zoom the chart out after a user has zoomed in. See also Axis.setExtremes. * * @fires Highcharts.Chart#selection */ zoomOut(): void; } /** * The overview of the chart's series. The legend object is instanciated * internally in the chart constructor, and is available from the `chart.legend` * property. Each chart has only one legend. */ export class Legend { /** * The overview of the chart's series. The legend object is instanciated * internally in the chart constructor, and is available from the * `chart.legend` property. Each chart has only one legend. * * @param chart * The chart instance. * * @param options * Legend options. */ constructor(chart: Chart, options: LegendOptions); /** * All items for the legend, which is an array of series for most series and * an array of points for pie series and its derivatives. */ readonly allItems: Array<(Point|Series)>; /** * SVG element of the legend box. */ readonly box: SVGElement; /** * Chart of this legend. */ readonly chart: Chart; /** * SVG group of the legend. */ readonly group: SVGElement; /** * Legend options. */ readonly options: LegendOptions; /** * SVG element of the legend title. */ readonly title: SVGElement; /** * Set the legend item text. * * @param item * The item for which to update the text in the legend. */ setText(item: (Point|Series)): void; /** * Update the legend with new options. Equivalent to running `chart.update` * with a legend configuration option. * * @param options * Legend options. * * @param redraw * Whether to redraw the chart after the axis is altered. If doing * more operations on the chart, it is a good idea to set redraw to * false and call Chart#redraw after. Whether to redraw the chart. * * @fires Highcharts.Legends#afterUpdate */ update(options: LegendOptions, redraw?: boolean): void; } /** * The object wrapper for plot lines and plot bands */ export class PlotLineOrBand { /** * The object wrapper for plot lines and plot bands */ constructor(axis: Axis, options: (AxisPlotBandsOptions|AxisPlotLinesOptions)); /** * SVG element of the label. */ label: SVGElement; /** * SVG element of the plot line or band. */ svgElement: SVGElement; /** * Remove the plot line or band. */ destroy(): void; } /** * The Point object. The point objects are generated from the `series.data` * configuration objects or raw numbers. They can be accessed from the * `Series.points` array. Other ways to instantiate points are through * Highcharts.Series#addPoint or Highcharts.Series#setData. */ export class Point { /** * Custom properties set by custom data options. */ [property: string]: any; /** * For categorized axes this property holds the category name for the point. * For other axes it holds the X value. */ category: (number|string); /** * The point's current color. */ color: (ColorString|GradientColorObject|PatternObject); /** * The point's current color index, used in styled mode instead of `color`. * The color index is inserted in class names used for styling. */ colorIndex: number; /** * (Highstock) Highstock only. If a point object is created by data * grouping, it doesn't reflect actual points in the raw data. In this case, * the `dataGroup` property holds information that points back to the raw * data. * * - `dataGroup.start` is the index of the first raw data point in the * group. * * - `dataGroup.length` is the amount of points in the group. */ dataGroup?: SVGElement; /** * The name of the point. The name can be given as the first position of the * point configuration array, or as a `name` property in the configuration: */ name: string; /** * The point's options as applied in the initial configuration, or extended * through `Point.update`. */ options: object; /** * The percentage for points in a stacked series or pies. */ percentage: number; /** * Whether the point is selected or not. */ selected: boolean; /** * The series object associated with the point. */ series: Series; /** * The total of values in either a stack for stacked series, or a pie in a * pie series. */ total: number; /** * For certain series types, like pie charts, where individual points can be * shown or hidden. */ visible: boolean; /** * The x value of the point. */ x: number; /** * The y value of the point. */ y?: number; /** * Get the CSS class names for individual points. Used internally where the * returned value is set on every point. * * @return The class names. */ getClassName(): string; /** * Return the configuration hash needed for the data label and tooltip * formatters. * * @return Abstract object used in formatters and formats. */ getLabelConfig(): PointLabelObject; /** * In a series with `zones`, return the zone that the point belongs to. * * @return The zone item. */ getZone(): PlotSeriesZonesOptions; /** * Get the path definition for the halo, which is usually a shadow-like * circle around the currently hovered point. * * @param size * The radius of the circular halo. * * @return The path definition. */ haloPath(size: number): SVGPathArray; /** * Initialize the point. Called internally based on the `series.data` * option. * * @param series * The series object containing this point. * * @param options * The data in either number, array or object format. * * @param x * Optionally, the X value of the point. * * @return The Point instance. * * @fires Highcharts.Point#afterInit */ init(series: Series, options: (number|object|Array<(number|string)>|null), x?: number): Point; /** * Runs on mouse out from the point. Called internally from mouse and touch * events. * * @fires Highcharts.Point#mouseOut */ onMouseOut(): void; /** * Runs on mouse over the point. Called internally from mouse and touch * events. * * @param e * The event arguments. */ onMouseOver(e: PointerEventObject): void; /** * Transform number or array configs into objects. Used internally to unify * the different configuration formats for points. For example, a simple * number `10` in a line series will be transformed to `{ y: 10 }`, and an * array config like `[1, 10]` in a scatter series will be transformed to `{ * x: 1, y: 10 }`. * * @param options * The input option. * * @return Transformed options. */ optionsToObject(options: (number|object|Array<(number|string)>|null)): object; /** * Remove a point and optionally redraw the series and if necessary the axes * * @param redraw * Whether to redraw the chart or wait for an explicit call. When * doing more operations on the chart, for example running * `point.remove()` in a loop, it is best practice to set `redraw` to * false and call `chart.redraw()` after. * * @param animation * Whether to apply animation, and optionally animation * configuration. */ remove(redraw: boolean, animation?: (boolean|AnimationOptionsObject)): void; /** * Toggle the selection status of a point. * * @param selected * When `true`, the point is selected. When `false`, the point is * unselected. When `null` or `undefined`, the selection state is * toggled. * * @param accumulate * When `true`, the selection is added to other selected points. When * `false`, other selected points are deselected. Internally in * Highcharts, when allowPointSelect is `true`, selected points are * accumulated on Control, Shift or Cmd clicking the point. * * @fires Highcharts.Point#select * @fires Highcharts.Point#unselect */ select(selected?: boolean, accumulate?: boolean): void; /** * Set a value in an object, on the property defined by key. The key * supports nested properties using dot notation. The function modifies the * input object and does not make a copy. * * @param object * The object to set the value on. * * @param value * The value to set. * * @param key * Key to the property to set. * * @return The modified object. */ setNestedProperty(object: object, value: any, key: string): object; /** * Set the point's state. * * @param state * The new state, can be one of `''` (an empty string), `hover`, * `select` or `inactive`. * * @param move * State for animation. * * @fires Highcharts.Point#afterSetState */ setState(state?: string, move?: boolean): void; /** * Extendable method for formatting each point's tooltip line. * * @param pointFormat * The point format. * * @return A string to be concatenated in to the common tooltip text. */ tooltipFormatter(pointFormat: string): string; /** * Update point with new options (typically x/y data) and optionally redraw * the series. * * @param options * The point options. Point options are handled as described under * the `series.type.data` item for each series type. For example for * a line series, if options is a single number, the point will be * given that number as the marin y value. If it is an array, it will * be interpreted as x and y values respectively. If it is an object, * advanced options are applied. * * @param redraw * Whether to redraw the chart after the point is updated. If doing * more operations on the chart, it is best practice to set `redraw` * to false and call `chart.redraw()` after. * * @param animation * Whether to apply animation, and optionally animation * configuration. * * @fires Highcharts.Point#update */ update(options: (number|object|Array<(number|string)>|null), redraw?: boolean, animation?: (boolean|AnimationOptionsObject)): void; } /** * The mouse and touch tracker object. Each Chart item has one assosiated * Pointer item that can be accessed from the Chart.pointer property. */ export class Pointer { /** * The mouse and touch tracker object. Each Chart item has one assosiated * Pointer item that can be accessed from the Chart.pointer property. * * @param chart * The Chart instance. * * @param options * The root options object. The pointer uses options from the chart * and tooltip structures. */ constructor(chart: Chart, options: Options); /** * Destroys the Pointer object and disconnects DOM events. */ destroy(): void; /** * Finds the closest point to a set of coordinates, using the k-d-tree * algorithm. * * @param series * All the series to search in. * * @param shared * Whether it is a shared tooltip or not. * * @param e * The pointer event object, containing chart coordinates of the * pointer. * * @return The point closest to given coordinates. */ findNearestKDPoints(series: Array<Series>, shared: boolean, e: PointerEventObject): (Point|undefined); /** * Get the click position in terms of axis values. * * @param e * Pointer event, extended with `chartX` and `chartY` properties. */ getCoordinates(e: PointerEventObject): PointerAxisCoordinatesObject; /** * Utility to detect whether an element has, or has a parent with, a * specificclass name. Used on detection of tracker objects and on deciding * whether hovering the tooltip should cause the active series to mouse out. * * @param element * The element to investigate. * * @param className * The class name to look for. * * @return True if either the element or one of its parents has the given * class name. */ inClass(element: (HTMLDOMElement|SVGDOMElement), className: string): boolean; /** * Takes a browser event object and extends it with custom Highcharts * properties `chartX` and `chartY` in order to work on the internal * coordinate system. * * @param e * Event object in standard browsers. * * @return A browser event with extended properties `chartX` and `chartY`. */ normalize(e: Event): PointerEventObject; /** * Reset the tracking by hiding the tooltip, the hover series state and the * hover point * * @param allowMove * Instead of destroying the tooltip altogether, allow moving it if * possible. */ reset(allowMove: boolean, delay: number): void; } /** * This is the base series prototype that all other series types inherit from. A * new series is initialized either through the series option structure, or * after the chart is initialized, through Highcharts.Chart#addSeries. * * The object can be accessed in a number of ways. All series and point event * handlers give a reference to the `series` object. The chart object has a * series property that is a collection of all the chart's series. The point * objects and axis objects also have the same reference. * * Another way to reference the series programmatically is by `id`. Add an id in * the series configuration options, and get the series object by * Highcharts.Chart#get. * * Configuration options for the series are given in three levels. Options for * all series in a chart are given in the plotOptions.series object. Then * options for all series of a specific type are given in the plotOptions of * that type, for example `plotOptions.line`. Next, options for one single * series are given in the series array, or as arguments to `chart.addSeries`. * * The data in the series is stored in various arrays. * * - First, `series.options.data` contains all the original config options for * each point whether added by options or methods like `series.addPoint`. * * - Next, `series.data` contains those values converted to points, but in case * the series data length exceeds the `cropThreshold`, or if the data is * grouped, `series.data` doesn't contain all the points. It only contains the * points that have been created on demand. * * - Then there's `series.points` that contains all currently visible point * objects. In case of cropping, the cropped-away points are not part of this * array. The `series.points` array starts at `series.cropStart` compared to * `series.data` and `series.options.data`. If however the series data is * grouped, these can't be correlated one to one. * * - `series.xData` and `series.processedXData` contain clean x values, * equivalent to `series.data` and `series.points`. * * - `series.yData` and `series.processedYData` contain clean y values, * equivalent to `series.data` and `series.points`. */ export class Series { /** * This is the base series prototype that all other series types inherit * from. A new series is initialized either through the series option * structure, or after the chart is initialized, through * Highcharts.Chart#addSeries. * * The object can be accessed in a number of ways. All series and point * event handlers give a reference to the `series` object. The chart object * has a series property that is a collection of all the chart's series. The * point objects and axis objects also have the same reference. * * Another way to reference the series programmatically is by `id`. Add an * id in the series configuration options, and get the series object by * Highcharts.Chart#get. * * Configuration options for the series are given in three levels. Options * for all series in a chart are given in the plotOptions.series object. * Then options for all series of a specific type are given in the * plotOptions of that type, for example `plotOptions.line`. Next, options * for one single series are given in the series array, or as arguments to * `chart.addSeries`. * * The data in the series is stored in various arrays. * * - First, `series.options.data` contains all the original config options * for each point whether added by options or methods like * `series.addPoint`. * * - Next, `series.data` contains those values converted to points, but in * case the series data length exceeds the `cropThreshold`, or if the data * is grouped, `series.data` doesn't contain all the points. It only * contains the points that have been created on demand. * * - Then there's `series.points` that contains all currently visible point * objects. In case of cropping, the cropped-away points are not part of * this array. The `series.points` array starts at `series.cropStart` * compared to `series.data` and `series.options.data`. If however the * series data is grouped, these can't be correlated one to one. * * - `series.xData` and `series.processedXData` contain clean x values, * equivalent to `series.data` and `series.points`. * * - `series.yData` and `series.processedYData` contain clean y values, * equivalent to `series.data` and `series.points`. * * @param chart * The chart instance. * * @param options * The series options. */ constructor(chart: Chart, options: (object|SeriesOptionsType)); /** * Read only. The chart that the series belongs to. */ chart: Chart; /** * Read only. An array containing those values converted to points. In case * the series data length exceeds the `cropThreshold`, or if the data is * grouped, `series.data` doesn't contain all the points. Also, in case a * series is hidden, the `data` array may be empty. To access raw values, * `series.options.data` will always be up to date. `Series.data` only * contains the points that have been created on demand. To modify the data, * use Highcharts.Series#setData or Highcharts.Point#update. */ data: Array<Point>; /** * The series name as given in the options. Defaults to "Series {n}". */ name: string; /** * Read only. The series' current options. To update, use Series#update. */ options: SeriesOptionsType; /** * An array containing all currently visible point objects. In case of * cropping, the cropped-away points are not part of this array. The * `series.points` array starts at `series.cropStart` compared to * `series.data` and `series.options.data`. If however the series data is * grouped, these can't be correlated one to one. To modify the data, use * Highcharts.Series#setData or Highcharts.Point#update. */ points: Array<Point>; /** * Read only. The series' selected state as set by Highcharts.Series#select. */ selected: boolean; /** * Read only. The series' type, like "line", "area", "column" etc. The type * in the series options anc can be altered using Series#update. */ type: string; /** * Read only. The series' visibility state as set by Series#show, * Series#hide, or in the initial configuration. */ visible: boolean; /** * Read only. The unique xAxis object associated with the series. */ xAxis: Axis; /** * Read only. The unique yAxis object associated with the series. */ yAxis: Axis; /** * Add a point to the series after render time. The point can be added at * the end, or by giving it an X value, to the start or in the middle of the * series. * * @param options * The point options. If options is a single number, a point with * that y value is appended to the series. If it is an array, it will * be interpreted as x and y values respectively. If it is an object, * advanced options as outlined under `series.data` are applied. * * @param redraw * Whether to redraw the chart after the point is added. When adding * more than one point, it is highly recommended that the redraw * option be set to false, and instead Chart#redraw is explicitly * called after the adding of points is finished. Otherwise, the * chart will redraw after adding each point. * * @param shift * If true, a point is shifted off the start of the series as one is * appended to the end. * * @param animation * Whether to apply animation, and optionally animation * configuration. * * @param withEvent * Used internally, whether to fire the series `addPoint` event. * * @fires Highcharts.Series#addPoint */ addPoint(options: (number|object|Array<(number|string)>|null), redraw?: boolean, shift?: boolean, animation?: (boolean|AnimationOptionsObject), withEvent?: boolean): void; /** * Animate in the series. Called internally twice. First with the `init` * parameter set to true, which sets up the initial state of the animation. * Then when ready, it is called with the `init` parameter undefined, in * order to perform the actual animation. After the second run, the function * is removed. * * @param init * Initialize the animation. */ animate(init: boolean): void; /** * Draw the graph. Called internally when rendering line-like series types. * The first time it generates the `series.graph` item and optionally other * series-wide items like `series.area` for area charts. On subsequent calls * these items are updated with new positions and attributes. */ drawGraph(): void; /** * Draw the markers for line-like series types, and columns or other * graphical representation for Point objects for other series types. The * resulting element is typically stored as Point.graphic, and is created on * the first call and updated and moved on subsequent calls. */ drawPoints(): void; /** * Return series name in "Series {Number}" format or the one defined by a * user. This method can be simply overridden as series name format can vary * (e.g. technical indicators). * * @return The series name. */ getName(): string; /** * Get the translation and scale for the plot area of this series. */ getPlotBox(): SeriesPlotBoxObject; /** * Return the series points with null points filtered out. * * @param points * The points to inspect, defaults to Series.points. * * @param insideOnly * Whether to inspect only the points that are inside the visible * view. * * @param allowNull * Whether to allow null points to pass as valid points. * * @return The valid points. */ getValidPoints(points?: Array<Point>, insideOnly?: boolean, allowNull?: boolean): Array<Point>; /** * Hide the series if visible. If the chart.ignoreHiddenSeries option is * true, the chart is redrawn without this series. * * @fires Highcharts.Series#hide */ hide(): void; /** * Get non-presentational attributes for a point. Used internally for both * styled mode and classic. Can be overridden for different series types. * * @param point * The Point to inspect. * * @param state * The state, can be either `hover`, `select` or undefined. * * @return A hash containing those attributes that are not settable from * CSS. */ markerAttribs(point: Point, state?: string): SVGAttributes; /** * Runs on mouse out of the series graphical items. * * @fires Highcharts.Series#mouseOut */ onMouseOut(): void; /** * Runs on mouse over the series graphical items. * * @fires Highcharts.Series#mouseOver */ onMouseOver(): void; /** * Remove a series and optionally redraw the chart. * * @param redraw * Whether to redraw the chart or wait for an explicit call to * Highcharts.Chart#redraw. * * @param animation * Whether to apply animation, and optionally animation * configuration. * * @param withEvent * Used internally, whether to fire the series `remove` event. * * @fires Highcharts.Series#remove */ remove(redraw?: boolean, animation?: (boolean|AnimationOptionsObject), withEvent?: boolean): void; /** * Remove a point from the series. Unlike the Highcharts.Point#remove * method, this can also be done on a point that is not instanciated because * it is outside the view or subject to Highstock data grouping. * * @param i * The index of the point in the data array. * * @param redraw * Whether to redraw the chart after the point is added. When * removing more than one point, it is highly recommended that the * `redraw` option be set to `false`, and instead * Highcharts.Chart#redraw is explicitly called after the adding of * points is finished. * * @param animation * Whether and optionally how the series should be animated. * * @fires Highcharts.Point#remove */ removePoint(i: number, redraw?: boolean, animation?: (boolean|AnimationOptionsObject)): void; /** * Render the graph and markers. Called internally when first rendering and * later when redrawing the chart. This function can be extended in plugins, * but normally shouldn't be called directly. * * @fires Highcharts.Series#afterRender */ render(): void; /** * Select or unselect the series. This means its selected property is set, * the checkbox in the legend is toggled and when selected, the series is * returned by the Highcharts.Chart#getSelectedSeries function. * * @param selected * True to select the series, false to unselect. If undefined, the * selection state is toggled. * * @fires Highcharts.Series#select * @fires Highcharts.Series#unselect */ select(selected?: boolean): void; /** * Apply a new set of data to the series and optionally redraw it. The new * data array is passed by reference (except in case of `updatePoints`), and * may later be mutated when updating the chart data. * * Note the difference in behaviour when setting the same amount of points, * or a different amount of points, as handled by the `updatePoints` * parameter. * * @param data * Takes an array of data in the same format as described under * `series.{type}.data` for the given series type, for example a line * series would take data in the form described under * series.line.data. * * @param redraw * Whether to redraw the chart after the series is altered. If doing * more operations on the chart, it is a good idea to set redraw to * false and call Chart#redraw after. * * @param animation * When the updated data is the same length as the existing data, * points will be updated by default, and animation visualizes how * the points are changed. Set false to disable animation, or a * configuration object to set duration or easing. * * @param updatePoints * When this is true, points will be updated instead of replaced * whenever possible. This occurs a) when the updated data is the * same length as the existing data, b) when points are matched by * their id's, or c) when points can be matched by X values. This * allows updating with animation and performs better. In this case, * the original array is not passed by reference. Set `false` to * prevent. */ setData(data: Array<any>, redraw?: boolean, animation?: AnimationOptionsObject, updatePoints?: boolean): void; /** * Set the series options by merging from the options tree. Called * internally on initializing and updating series. This function will not * redraw the series. For API usage, use Series#update. * * @param itemOptions * The series options. * * @fires Highcharts.Series#afterSetOptions */ setOptions(itemOptions: SeriesOptionsType): SeriesOptionsType; /** * Set the state of the series. Called internally on mouse interaction * operations, but it can also be called directly to visually highlight a * series. * * @param state * Can be either `hover` or undefined to set to normal state. * * @param inherit * Determines if state should be inherited by points too. */ setState(state?: string, inherit?: boolean): void; /** * Show or hide the series. * * @param visible * True to show the series, false to hide. If undefined, the * visibility is toggled. * * @param redraw * Whether to redraw the chart after the series is altered. If doing * more operations on the chart, it is a good idea to set redraw to * false and call chart.redraw() after. * * @fires Highcharts.Series#hide * @fires Highcharts.Series#show */ setVisible(visible?: boolean, redraw?: boolean): void; /** * Show the series if hidden. * * @fires Highcharts.Series#show */ show(): void; /** * Translate data points from raw data values to chart specific positioning * data needed later in the `drawPoints` and `drawGraph` functions. This * function can be overridden in plugins and custom series type * implementations. * * @fires Highcharts.Series#events:translate */ translate(): void; /** * Update the series with a new set of options. For a clean and precise * handling of new options, all methods and elements from the series are * removed, and it is initialized from scratch. Therefore, this method is * more performance expensive than some other utility methods like * Series#setData or Series#setVisible. * * Note that `Series.update` may mutate the passed `data` options. * * @param options * New options that will be merged with the series' existing options. * * @param redraw * Whether to redraw the chart after the series is altered. If doing * more operations on the chart, it is a good idea to set redraw to * false and call Chart#redraw after. * * @fires Highcharts.Series#update * @fires Highcharts.Series#afterUpdate */ update(options: SeriesOptionsType, redraw?: boolean): void; } /** * The SVGElement prototype is a JavaScript wrapper for SVG elements used in the * rendering layer of Highcharts. Combined with the Highcharts.SVGRenderer * object, these prototypes allow freeform annotation in the charts or even in * HTML pages without instanciating a chart. The SVGElement can also wrap HTML * labels, when `text` or `label` elements are created with the `useHTML` * parameter. * * The SVGElement instances are created through factory functions on the * Highcharts.SVGRenderer object, like rect, path, text, label, g and more. */ export class SVGElement { /** * The primary DOM node. Each `SVGElement` instance wraps a main DOM node, * but may also represent more nodes. */ element: (HTMLDOMElement|SVGDOMElement); /** * The renderer that the SVGElement belongs to. */ renderer: SVGRenderer; /** * Add the element to the DOM. All elements must be added this way. * * @param parent * The parent item to add it to. If undefined, the element is added * to the Highcharts.SVGRenderer.box. * * @return Returns the SVGElement for chaining. */ add(parent?: (SVGDOMElement|SVGElement)): SVGElement; /** * Add a class name to an element. * * @param className * The new class name to add. * * @param replace * When true, the existing class name(s) will be overwritten with the * new one. When false, the new one is added. * * @return Return the SVG element for chainability. */ addClass(className: string, replace?: boolean): SVGElement; /** * Align the element relative to the chart or another box. * * @param alignOptions * The alignment options. The function can be called without this * parameter in order to re-align an element after the box has been * updated. * * @param alignByTranslate * Align element by translation. * * @param box * The box to align to, needs a width and height. When the box is a * string, it refers to an object in the Renderer. For example, when * box is `spacingBox`, it refers to `Renderer.spacingBox` which * holds `width`, `height`, `x` and `y` properties. * * @return Returns the SVGElement for chaining. */ align(alignOptions?: AlignObject, alignByTranslate?: boolean, box?: (string|BBoxObject)): SVGElement; /** * Animate to given attributes or CSS properties. * * @param params * SVG attributes or CSS to animate. * * @param options * Animation options. * * @param complete * Function to perform at the end of animation. * * @return Returns the SVGElement for chaining. */ animate(params: SVGAttributes, options?: AnimationOptionsObject, complete?: Function): SVGElement; /** * Apply native and custom attributes to the SVG elements. * * In order to set the rotation center for rotation, set x and y to 0 and * use `translateX` and `translateY` attributes to position the element * instead. * * Attributes frequently used in Highcharts are `fill`, `stroke`, * `stroke-width`. * * @param hash * The native and custom SVG attributes. * * @param val * If the type of the first argument is `string`, the second can be a * value, which will serve as a single attribute setter. If the first * argument is a string and the second is undefined, the function * serves as a getter and the current value of the property is * returned. * * @param complete * A callback function to execute after setting the attributes. This * makes the function compliant and interchangeable with the * SVGElement#animate function. * * @param continueAnimation * Used internally when `.attr` is called as part of an animation * step. Otherwise, calling `.attr` for an attribute will stop * animation for that attribute. * * @return If used as a setter, it returns the current Highcharts.SVGElement * so the calls can be chained. If used as a getter, the current * value of the attribute is returned. */ attr(hash?: (string|SVGAttributes), val?: string, complete?: Function, continueAnimation?: boolean): (number|string|SVGElement); /** * Apply a clipping rectangle to this element. * * @param clipRect * The clipping rectangle. If skipped, the current clip is removed. * * @return Returns the SVG element to allow chaining. */ clip(clipRect?: ClipRectElement): SVGElement; /** * Calculate the coordinates needed for drawing a rectangle crisply and * return the calculated attributes. * * @param rect * Rectangle to crisp. * * @param strokeWidth * The stroke width to consider when computing crisp positioning. It * can also be set directly on the rect parameter. * * @return The modified rectangle arguments. */ crisp(rect: RectangleObject, strokeWidth?: number): RectangleObject; /** * Set styles for the element. In addition to CSS styles supported by native * SVG and HTML elements, there are also some custom made for Highcharts, * like `width`, `ellipsis` and `textOverflow` for SVG text elements. * * @param styles * The new CSS styles. * * @return Return the SVG element for chaining. */ css(styles: CSSObject): SVGElement; /** * Destroy the element and element wrapper and clear up the DOM and event * hooks. */ destroy(): void; /** * Fade out an element by animating its opacity down to 0, and hide it on * complete. Used internally for the tooltip. * * @param duration * The fade duration in milliseconds. */ fadeOut(duration?: number): void; /** * Get the bounding box (width, height, x and y) for the element. Generally * used to get rendered text size. Since this is called a lot in charts, the * results are cached based on text properties, in order to save DOM * traffic. The returned bounding box includes the rotation, so for example * a single text line of rotation 90 will report a greater height, and a * width corresponding to the line-height. * * @param reload * Skip the cache and get the updated DOM bouding box. * * @param rot * Override the element's rotation. This is internally used on axis * labels with a value of 0 to find out what the bounding box would * be have been if it were not rotated. * * @return The bounding box with `x`, `y`, `width` and `height` properties. */ getBBox(reload?: boolean, rot?: number): BBoxObject; /** * Get the computed style. Only in styled mode. * * @param prop * The property name to check for. * * @return The current computed value. */ getStyle(prop: string): string; /** * Check if an element has the given class name. * * @param className * The class name to check for. * * @return Whether the class name is found. */ hasClass(className: string): boolean; /** * Hide the element, equivalent to setting the `visibility` attribute to * `hidden`. * * @return Returns the SVGElement for chaining. */ hide(): SVGElement; /** * Initialize the SVG element. This function only exists to make the * initialization process overridable. It should not be called directly. * * @param renderer * The SVGRenderer instance to initialize to. * * @param nodeName * The SVG node name. */ init(renderer: SVGRenderer, nodeName: string): void; /** * Invert a group, rotate and flip. This is used internally on inverted * charts, where the points and graphs are drawn as if not inverted, then * the series group elements are inverted. * * @param inverted * Whether to invert or not. An inverted shape can be un-inverted by * setting it to false. * * @return Return the SVGElement for chaining. */ invert(inverted: boolean): SVGElement; /** * Add an event listener. This is a simple setter that replaces all other * events of the same type, opposed to the Highcharts#addEvent function. * * @param eventType * The event type. If the type is `click`, Highcharts will internally * translate it to a `touchstart` event on touch devices, to prevent * the browser from waiting for a click event from firing. * * @param handler * The handler callback. * * @return The SVGElement for chaining. */ on(eventType: string, handler: Function): SVGElement; /** * Remove a class name from the element. * * @param className * The class name to remove. * * @return Returns the SVG element for chainability. */ removeClass(className: (string|RegExp)): SVGElement; /** * Set the coordinates needed to draw a consistent radial gradient across a * shape regardless of positioning inside the chart. Used on pie slices to * make all the slices have the same radial reference point. * * @param coordinates * The center reference. The format is `[centerX, centerY, diameter]` * in pixels. * * @return Returns the SVGElement for chaining. */ setRadialReference(coordinates: Array<number>): SVGElement; /** * Add a shadow to the element. Must be called after the element is added to * the DOM. In styled mode, this method is not used, instead use `defs` and * filters. * * @param shadowOptions * The shadow options. If `true`, the default options are applied. If * `false`, the current shadow will be removed. * * @param group * The SVG group element where the shadows will be applied. The * default is to add it to the same parent as the current element. * Internally, this is ised for pie slices, where all the shadows are * added to an element behind all the slices. * * @param cutOff * Used internally for column shadows. * * @return Returns the SVGElement for chaining. */ shadow(shadowOptions: (boolean|ShadowOptionsObject), group?: SVGElement, cutOff?: boolean): SVGElement; /** * Show the element after it has been hidden. * * @param inherit * Set the visibility attribute to `inherit` rather than `visible`. * The difference is that an element with `visibility="visible"` will * be visible even if the parent is hidden. * * @return Returns the SVGElement for chaining. */ show(inherit?: boolean): SVGElement; /** * Get the computed stroke width in pixel values. This is used extensively * when drawing shapes to ensure the shapes are rendered crisp and * positioned correctly relative to each other. Using `shape-rendering: * crispEdges` leaves us less control over positioning, for example when we * want to stack columns next to each other, or position things * pixel-perfectly within the plot box. * * The common pattern when placing a shape is: * * - Create the SVGElement and add it to the DOM. In styled mode, it will * now receive a stroke width from the style sheet. In classic mode we will * add the `stroke-width` attribute. * * - Read the computed `elem.strokeWidth()`. * * - Place it based on the stroke width. * * @return The stroke width in pixels. Even if the given stroke widtch (in * CSS or by attributes) is based on `em` or other units, the pixel * size is returned. */ strokeWidth(): number; /** * Bring the element to the front. Alternatively, a new zIndex can be set. * * @return Returns the SVGElement for chaining. */ toFront(): SVGElement; /** * Move an object and its children by x and y values. * * @param x * The x value. * * @param y * The y value. */ translate(x: number, y: number): void; } /** * Allows direct access to the Highcharts rendering layer in order to draw * primitive shapes like circles, rectangles, paths or text directly on a chart, * or independent from any chart. The SVGRenderer represents a wrapper object * for SVG in modern browsers. Through the VMLRenderer, part of the `oldie.js` * module, it also brings vector graphics to IE <= 8. * * An existing chart's renderer can be accessed through Chart.renderer. The * renderer can also be used completely decoupled from a chart. */ export class SVGRenderer { /** * Allows direct access to the Highcharts rendering layer in order to draw * primitive shapes like circles, rectangles, paths or text directly on a * chart, or independent from any chart. The SVGRenderer represents a * wrapper object for SVG in modern browsers. Through the VMLRenderer, part * of the `oldie.js` module, it also brings vector graphics to IE <= 8. * * An existing chart's renderer can be accessed through Chart.renderer. The * renderer can also be used completely decoupled from a chart. * * @param container * Where to put the SVG in the web page. * * @param width * The width of the SVG. * * @param height * The height of the SVG. * * @param forExport * Whether the rendered content is intended for export. * * @param allowHTML * Whether the renderer is allowed to include HTML text, which will * be projected on top of the SVG. */ constructor(container: HTMLDOMElement, width: number, height: number, forExport?: boolean, allowHTML?: boolean); /** * The root `svg` node of the renderer. */ box: SVGDOMElement; /** * The wrapper for the root `svg` node of the renderer. */ boxWrapper: SVGElement; /** * A pointer to the `defs` node of the root SVG. */ defs: SVGElement; /** * A pointer to the renderer's associated Element class. The VMLRenderer * will have a pointer to VMLElement here. */ Element: SVGElement; /** * A collection of characters mapped to HTML entities. When `useHTML` on an * element is true, these entities will be rendered correctly by HTML. In * the SVG pseudo-HTML, they need to be unescaped back to simple characters, * so for example `<` will render as `<`. */ escapes: Dictionary<string>; /** * An extendable collection of functions for defining symbol paths. */ symbols: SymbolDictionary; /** * Draw and return an arc. Overloaded function that takes arguments object. * * @param attribs * Initial SVG attributes. * * @return The generated wrapper element. */ arc(attribs: SVGAttributes): SVGElement; /** * Draw and return an arc. * * @param x * Center X position. * * @param y * Center Y position. * * @param r * The outer radius' of the arc. * * @param innerR * Inner radius like used in donut charts. * * @param start * The starting angle of the arc in radians, where 0 is to the right * and `-Math.PI/2` is up. * * @param end * The ending angle of the arc in radians, where 0 is to the right * and `-Math.PI/2` is up. * * @return The generated wrapper element. */ arc(x?: number, y?: number, r?: number, innerR?: number, start?: number, end?: number): SVGElement; /** * Create a button with preset states. * * @param text * The text or HTML to draw. * * @param x * The x position of the button's left side. * * @param y * The y position of the button's top side. * * @param callback * The function to execute on button click or touch. * * @param normalState * SVG attributes for the normal state. * * @param hoverState * SVG attributes for the hover state. * * @param pressedState * SVG attributes for the pressed state. * * @param disabledState * SVG attributes for the disabled state. * * @param shape * The shape type. * * @param useHTML * Wether to use HTML to render the label. * * @return The button element. */ button(text: string, x: number, y: number, callback: Function, normalState?: SVGAttributes, hoverState?: SVGAttributes, pressedState?: SVGAttributes, disabledState?: SVGAttributes, shape?: SymbolKeyValue, useHTML?: boolean): SVGElement; /** * Draw a circle, wraps the SVG `circle` element. * * @param attribs * The initial attributes. * * @return The generated wrapper element. */ circle(attribs?: SVGAttributes): SVGElement; /** * Draw a circle, wraps the SVG `circle` element. * * @param x * The center x position. * * @param y * The center y position. * * @param r * The radius. * * @return The generated wrapper element. */ circle(x?: number, y?: number, r?: number): SVGElement; /** * Define a clipping rectangle. The clipping rectangle is later applied to * SVGElement objects through the SVGElement#clip function. * * @return A clipping rectangle. */ clipRect(id: string, x: number, y: number, width: number, height: number): ClipRectElement; /** * Create a wrapper for an SVG element. Serves as a factory for SVGElement, * but this function is itself mostly called from primitive factories like * SVGRenderer#path, SVGRenderer#rect or SVGRenderer#text. * * @param nodeName * The node name, for example `rect`, `g` etc. * * @return The generated SVGElement. */ createElement(nodeName: string): SVGElement; /** * Make a straight line crisper by not spilling out to neighbour pixels. * * @param points * The original points on the format `['M', 0, 0, 'L', 100, 0]`. * * @param width * The width of the line. * * @return The original points array, but modified to render crisply. */ crispLine(points: SVGPathArray, width: number): SVGPathArray; /** * General method for adding a definition to the SVG `defs` tag. Can be used * for gradients, fills, filters etc. Styled mode only. A hook for adding * general definitions to the SVG's defs tag. Definitions can be referenced * from the CSS by its `id`. Read more in gradients, shadows and patterns. * Styled mode only. * * @param def * A serialized form of an SVG definition, including children. * * @return The inserted node. */ definition(def: SVGDefinitionObject): SVGElement; /** * Destroys the renderer and its allocated members. */ destroy(): void; /** * Dummy function for plugins, called every time the renderer is updated. * Prior to Highcharts 5, this was used for the canvg renderer. */ draw(): void; /** * Utility to return the baseline offset and total line height from the font * size. * * @param fontSize * The current font size to inspect. If not given, the font size will * be found from the DOM element. * * @param elem * The element to inspect for a current font size. * * @return The font metrics. */ fontMetrics(fontSize?: string, elem?: (SVGDOMElement|SVGElement)): FontMetricsObject; /** * Create and return an svg group element. Child Highcharts.SVGElement * objects are added to the group by using the group as the first parameter * in add(). * * @param name * The group will be given a class name of `highcharts-{name}`. This * can be used for styling and scripting. * * @return The generated wrapper element. */ g(name?: string): SVGElement; /** * Returns white for dark colors and black for bright colors. * * @param rgba * The color to get the contrast for. * * @return The contrast color, either `#000000` or `#FFFFFF`. */ getContrast(rgba: ColorString): string; /** * Display an image. * * @param src * The image source. * * @param x * The X position. * * @param y * The Y position. * * @param width * The image width. If omitted, it defaults to the image file width. * * @param height * The image height. If omitted it defaults to the image file height. * * @param onload * Event handler for image load. * * @return The generated wrapper element. */ image(src: string, x?: number, y?: number, width?: number, height?: number, onload?: Function): SVGElement; /** * Initialize the SVGRenderer. Overridable initializer function that takes * the same parameters as the constructor. * * @param container * Where to put the SVG in the web page. * * @param width * The width of the SVG. * * @param height * The height of the SVG. * * @param forExport * Whether the rendered content is intended for export. * * @param allowHTML * Whether the renderer is allowed to include HTML text, which will * be projected on top of the SVG. * * @param styledMode * Whether the renderer belongs to a chart that is in styled mode. If * it does, it will avoid setting presentational attributes in some * cases, but not when set explicitly through `.attr` and `.css` etc. */ init(container: HTMLDOMElement, width: number, height: number, forExport?: boolean, allowHTML?: boolean, styledMode?: boolean): void; /** * Detect whether the renderer is hidden. This happens when one of the * parent elements has `display: none`. Used internally to detect when we * needto render preliminarily in another div to get the text bounding boxes * right. * * @return True if it is hidden. */ isHidden(): boolean; /** * Draw a label, which is an extended text element with support for border * and background. Highcharts creates a `g` element with a text and a `path` * or `rect` inside, to make it behave somewhat like a HTML div. Border and * background are set through `stroke`, `stroke-width` and `fill` attributes * using the attr method. To update the text after render, run `label.attr({ * text: 'New text' })`. * * @param str * The initial text string or (subset) HTML to render. * * @param x * The x position of the label's left side. * * @param y * The y position of the label's top side or baseline, depending on * the `baseline` parameter. * * @param shape * The shape of the label's border/background, if any. Defaults to * `rect`. Other possible values are `callout` or other shapes * defined in Highcharts.SVGRenderer#symbols. * * @param anchorX * In case the `shape` has a pointer, like a flag, this is the * coordinates it should be pinned to. * * @param anchorY * In case the `shape` has a pointer, like a flag, this is the * coordinates it should be pinned to. * * @param useHTML * Wether to use HTML to render the label. * * @param baseline * Whether to position the label relative to the text baseline, like * renderer.text, or to the upper border of the rectangle. * * @param className * Class name for the group. * * @return The generated label. */ label(str: string, x: number, y: number, shape?: string, anchorX?: number, anchorY?: number, useHTML?: boolean, baseline?: boolean, className?: string): SVGElement; /** * Draw a path, wraps the SVG `path` element. * * @param attribs * The initial attributes. * * @return The generated wrapper element. */ path(attribs?: SVGAttributes): SVGElement; /** * Draw a path, wraps the SVG `path` element. * * @param path * An SVG path definition in array form. * * @return The generated wrapper element. */ path(path?: SVGPathArray): SVGElement; /** * Draw and return a rectangle. * * @param attributes * General SVG attributes for the rectangle. * * @return The generated wrapper element. */ rect(attributes?: SVGAttributes): SVGElement; /** * Draw and return a rectangle. * * @param x * Left position. * * @param y * Top position. * * @param width * Width of the rectangle. * * @param height * Height of the rectangle. * * @param r * Border corner radius. * * @param strokeWidth * A stroke width can be supplied to allow crisp drawing. * * @return The generated wrapper element. */ rect(x?: number, y?: number, width?: number, height?: number, r?: number, strokeWidth?: number): SVGElement; /** * Resize the SVGRenderer#box and re-align all aligned child elements. * * @param width * The new pixel width. * * @param height * The new pixel height. * * @param animate * Whether and how to animate. */ setSize(width: number, height: number, animate?: (boolean|AnimationOptionsObject)): void; /** * Apply the global style on the renderer, mixed with the default styles. * * @param style * CSS to apply. */ setStyle(style: CSSObject): void; /** * Draw a symbol out of pre-defined shape paths from SVGRenderer#symbols. It * is used in Highcharts for point makers, which cake a `symbol` option, and * label and button backgrounds like in the tooltip and stock flags. * * @param symbol * The symbol name. * * @param x * The X coordinate for the top left position. * * @param y * The Y coordinate for the top left position. * * @param width * The pixel width. * * @param height * The pixel height. * * @param options * Additional options, depending on the actual symbol drawn. */ symbol(symbol: symbol, x: number, y: number, width: number, height: number, options?: SymbolOptionsObject): SVGElement; /** * Draw text. The text can contain a subset of HTML, like spans and anchors * and some basic text styling of these. For more advanced features like * border and background, use Highcharts.SVGRenderer#label instead. To * update the text after render, run `text.attr({ text: 'New text' })`. * * @param str * The text of (subset) HTML to draw. * * @param x * The x position of the text's lower left corner. * * @param y * The y position of the text's lower left corner. * * @param useHTML * Use HTML to render the text. * * @return The text object. */ text(str: string, x: number, y: number, useHTML?: boolean): SVGElement; } /** * The Time class. Time settings are applied in general for each page using * `Highcharts.setOptions`, or individually for each Chart item through the time * options set. * * The Time object is available from Highcharts.Chart#time, which refers to * `Highcharts.time` if no individual time settings are applied. */ export class Time { /** * The Time class. Time settings are applied in general for each page using * `Highcharts.setOptions`, or individually for each Chart item through the * time options set. * * The Time object is available from Highcharts.Chart#time, which refers to * `Highcharts.time` if no individual time settings are applied. * * @param options * Time options as defined in chart.options.time. */ constructor(options: TimeOptions); /** * Formats a JavaScript date timestamp (milliseconds since Jan 1st 1970) * into a human readable date string. The format is a subset of the formats * for PHP's strftime function. Additional formats can be given in the * Highcharts.dateFormats hook. * * @param timestamp * The JavaScript timestamp. * * @param capitalize * Upper case first letter in the return. * * @return The formatted date. */ dateFormat(timestamp: number, capitalize?: boolean): string; /** * Formats a JavaScript date timestamp (milliseconds since Jan 1st 1970) * into a human readable date string. The format is a subset of the formats * for PHP's strftime function. Additional formats can be given in the * Highcharts.dateFormats hook. * * @param format * The desired format where various time representations are prefixed * with %. * * @param timestamp * The JavaScript timestamp. * * @param capitalize * Upper case first letter in the return. * * @return The formatted date. */ dateFormat(format: string, timestamp: number, capitalize?: boolean): string; /** * Return an array with time positions distributed on round time values * right and right after min and max. Used in datetime axes as well as for * grouping data on a datetime axis. * * @param normalizedInterval * The interval in axis values (ms) and the count * * @param min * The minimum in axis values * * @param max * The maximum in axis values */ getTimeTicks(normalizedInterval: NormalizedIntervalObject, min?: number, max?: number, startOfWeek?: number): TimeTicksObject; /** * Get the time zone offset based on the current timezone information as set * in the global options. * * @param timestamp * The JavaScript timestamp to inspect. * * @return The timezone offset in minutes compared to UTC. */ getTimezoneOffset(timestamp: number): number; /** * Make a time and returns milliseconds. Interprets the inputs as UTC time, * local time or a specific timezone time depending on the current time * settings. * * @param year * The year * * @param month * The month. Zero-based, so January is 0. * * @param date * The day of the month * * @param hours * The hour of the day, 0-23. * * @param minutes * The minutes * * @param seconds * The seconds * * @return The time in milliseconds since January 1st 1970. */ makeTime(year: number, month: number, date?: number, hours?: number, minutes?: number, seconds?: number): number; /** * Resolve legacy formats of dateTimeLabelFormats (strings and arrays) into * an object. * * @param f * General format description * * @return The object definition */ resolveDTLFormat(f: (any[]|object|string)): object; } /** * Tooltip of a chart. */ export class Tooltip { /** * Tooltip of a chart. * * @param chart * The chart instance. * * @param options * Tooltip options. */ constructor(chart: Chart, options: TooltipOptions); /** * Chart of the tooltip. */ readonly chart: Chart; /** * Tooltips are initially hidden. */ readonly isHidden: boolean; /** * Used tooltip options. */ readonly options: TooltipOptions; /** * Whether to allow the tooltip to render outside the chart's SVG element * box. By default (false), the tooltip is rendered within the chart's SVG * element, which results in the tooltip being aligned inside the chart * area. */ readonly outside: boolean; /** * When the tooltip is shared, the entire plot area will capture mouse * movement or touch events. */ readonly shared: boolean; /** * True, if the tooltip is splitted into one label per series, with the * header close to the axis. */ readonly split: boolean; /** * Removes and destroys the tooltip and its elements. */ destroy(): void; /** * Creates the Tooltip label element if it does not exist, then returns it. */ getLabel(): SVGElement; /** * Hides the tooltip with a fade out animation. * * @param delay * The fade out in milliseconds. If no value is provided the value of * the tooltip.hideDelay option is used. A value of 0 disables the * fade out animation. */ hide(delay?: number): void; /** * Moves the tooltip with a soft animation to a new position. */ move(x: number, y: number, anchorX: number, anchorY: number): void; /** * Refresh the tooltip's text and position. * * @param pointOrPoints * Either a point or an array of points. * * @param mouseEvent * Mouse event, that is responsible for the refresh and should be * used for the tooltip update. */ refresh(pointOrPoints: (Point|Array<Point>), mouseEvent?: Event): void; /** * Updates the tooltip with the provided tooltip options. * * @param options * The tooltip options to update. */ update(options: TooltipOptions): void; } /** * An array containing the current chart objects in the page. A chart's position * in the array is preserved throughout the page's lifetime. When a chart is * destroyed, the array item becomes `undefined`. */ export let charts: Array<Chart>; /** * A hook for defining additional date format specifiers. New specifiers are * defined as key-value pairs by using the specifier as key, and a function * which takes the timestamp as value. This function returns the formatted * portion of the date. */ export let dateFormats: Dictionary<TimeFormatCallbackFunction>; /** * Global default settings. */ export let defaultOptions: Options; /** * Global `Time` object with default options. Since v6.0.5, time settings can be * applied individually for each chart. If no individual settings apply, this * `Time` object is shared by all instances. */ export let time: Time; /** * Add an event listener. * * @param el * The element or object to add a listener to. It can be a * HTMLDOMElement, an SVGElement or any other object. * * @param type * The event type. * * @param fn * The function callback to execute when the event is fired. * * @param options * Options for adding the event. * * @return A callback function to remove the added event. */ export function addEvent<T>(el: T, type: string, fn: EventCallbackFunction<T>, options?: EventOptionsObject): Function; /** * The global animate method, which uses Fx to create individual animators. * * @param el * The element to animate. * * @param params * An object containing key-value pairs of the properties to animate. * Supports numeric as pixel-based CSS properties for HTML objects and * attributes for SVGElements. * * @param opt * Animation options. */ export function animate(el: (HTMLDOMElement|SVGElement), params: (HTMLAttributes|SVGAttributes), opt?: AnimationOptionsObject): void; /** * Get the animation in object form, where a disabled animation is always * returned as `{ duration: 0 }`. * * @param animation * An animation setting. Can be an object with duration, complete and * easing properties, or a boolean to enable or disable. * * @return An object with at least a duration property. */ export function animObject(animation: (boolean|AnimationOptionsObject)): AnimationOptionsObject; /** * Non-recursive method to find the lowest member of an array. `Math.max` raises * a maximum call stack size exceeded error in Chrome when trying to apply more * than 150.000 points. This method is slightly slower, but safe. * * @param data * An array of numbers. * * @return The highest number. */ export function arrayMax(data: any[]): number; /** * Non-recursive method to find the lowest member of an array. `Math.min` raises * a maximum call stack size exceeded error in Chrome when trying to apply more * than 150.000 points. This method is slightly slower, but safe. * * @param data * An array of numbers. * * @return The lowest number. */ export function arrayMin(data: any[]): number; /** * Set or get an attribute or an object of attributes. To use as a setter, pass * a key and a value, or let the second argument be a collection of keys and * values. To use as a getter, pass only a string as the second argument. * * @param elem * The DOM element to receive the attribute(s). * * @param prop * The property or an object of key-value pairs. * * @param value * The value if a single property is set. * * @return When used as a getter, return the value. */ export function attr(elem: (HTMLDOMElement|SVGDOMElement), prop?: (string|HTMLAttributes|SVGAttributes), value?: string): any; /** * Factory function for basic charts. * * @param options * The chart options structure. * * @param callback * Function to run when the chart has loaded and and all external images * are loaded. Defining a chart.events.load handler is equivalent. * * @return Returns the Chart object. */ export function chart(options: Options, callback?: ChartCallbackFunction): Chart; /** * Factory function for basic charts. * * @param renderTo * The DOM element to render to, or its id. * * @param options * The chart options structure. * * @param callback * Function to run when the chart has loaded and and all external images * are loaded. Defining a chart.events.load handler is equivalent. * * @return Returns the Chart object. */ export function chart(renderTo: (string|HTMLDOMElement), options: Options, callback?: ChartCallbackFunction): Chart; /** * Internal clear timeout. The function checks that the `id` was not removed * (e.g. by `chart.destroy()`). For the details see issue .7901. * * @param id * Id of a timeout. */ export function clearTimeout(id: number): void; /** * Fix JS round off float errors. * * @param num * A float number to fix. * * @param prec * The precision. * * @return The corrected float number. */ export function correctFloat(num: number, prec?: number): number; /** * Utility function to create an HTML element with attributes and styles. * * @param tag * The HTML tag. * * @param attribs * Attributes as an object of key-value pairs. * * @param styles * Styles as an object of key-value pairs. * * @param parent * The parent HTML object. * * @param nopad * If true, remove all padding, border and margin. * * @return The created DOM element. */ export function createElement(tag: string, attribs?: HTMLAttributes, styles?: CSSObject, parent?: HTMLDOMElement, nopad?: boolean): HTMLDOMElement; /** * Set CSS on a given element. * * @param el * An HTML DOM element. * * @param styles * Style object with camel case property names. */ export function css(el: HTMLDOMElement, styles: CSSObject): void; /** * Formats a JavaScript date timestamp (milliseconds since Jan 1st 1970) into a * human readable date string. The format is a subset of the formats for PHP's * strftime function. Additional formats can be given in the * Highcharts.dateFormats hook. * * Since v6.0.5, all internal dates are formatted through the * Highcharts.Chart#time instance to respect chart-level time settings. The * `Highcharts.dateFormat` function only reflects global time settings set with * `setOptions`. * * @param format * The desired format where various time representations are prefixed * with `%`. * * @param timestamp * The JavaScript timestamp. * * @param capitalize * Upper case first letter in the return. * * @return The formatted date. */ export function dateFormat(format: string, timestamp: number, capitalize?: boolean): string; /** * Recursively converts all Date properties to timestamps. * * @param object * any object to convert properties of */ export function datePropsToTimestamps(object: object): void; /** * Check if an object is null or undefined. * * @param obj * The object to check. * * @return False if the object is null or undefined, otherwise true. */ export function defined(obj: any): boolean; /** * Utility method that destroys any SVGElement instances that are properties on * the given object. It loops all properties and invokes destroy if there is a * destroy method. The property is then delete. * * @param obj * The object to destroy properties on. * * @param except * Exception, do not destroy this property, only delete it. */ export function destroyObjectProperties(obj: any, except?: any): void; /** * Discard a HTML element by moving it to the bin and delete. * * @param element * The HTML node to discard. */ export function discardElement(element: HTMLDOMElement): void; /** * Iterate over an array. * * @param arr * The array to iterate over. * * @param fn * The iterator callback. It passes three arguments: * * - `item`: The array item. * * - `index`: The item's index in the array. * * - `arr`: The array that each is being applied to. * * @param ctx * The context. */ export function each(arr: Array<any>, fn: Function, ctx?: any): void; /** * Remove the last occurence of an item from an array. * * @param arr * The array. * * @param item * The item to remove. */ export function erase(arr: any[], item: any): void; /** * Provide error messages for debugging, with links to online explanation. This * function can be overridden to provide custom error handling. * * @param code * The error code. See errors.xml for available codes. If it is a string, * the error message is printed directly in the console. * * @param stop * Whether to throw an error or just log a warning in the console. * * @param chart * Reference to the chart that causes the error. Used in 'debugger' * module to display errors directly on the chart. Important note: This * argument is undefined for errors that lack access to the Chart * instance. */ export function error(code: (number|string), stop?: boolean, chart?: Chart): void; /** * Utility function to extend an object with the members of another. * * @param a * The object to be extended. * * @param b * The object to add to the first one. * * @return Object a, the original object. */ export function extend(a: Dictionary<any>, b: Dictionary<any>): Dictionary<any>; /** * Extend a prototyped class by new members. * * @param parent * The parent prototype to inherit. * * @param members * A collection of prototype members to add or override compared to the * parent prototype. * * @return A new prototype. */ export function extendClass(parent: any, members: Dictionary<any>): any; /** * Return the value of the first element in the array that satisfies the * provided testing function. * * @param arr * The array to test. * * @param callback * The callback function. The function receives the item as the first * argument. Return `true` if this item satisfies the condition. * * @return The value of the element. */ export function find(arr: any[], callback: Function): any; /** * Fire an event that was registered with Highcharts#addEvent. * * @param el * The object to fire the event on. It can be a HTMLDOMElement, an * SVGElement or any other object. * * @param type * The type of event. * * @param eventArguments * Custom event arguments that are passed on as an argument to the event * handler. * * @param defaultFunction * The default function to execute if the other listeners haven't * returned false. */ export function fireEvent(el: any, type: string, eventArguments?: Dictionary<any>, defaultFunction?: Function): void; /** * Format a string according to a subset of the rules of Python's String.format * method. * * @param str * The string to format. * * @param ctx * The context, a collection of key-value pairs where each key is * replaced by its value. * * @param time * A `Time` instance that determines the date formatting, for example for * applying time zone corrections to the formatted date. * * @return The formatted string. */ export function format(str: string, ctx: any, time?: Time): string; /** * Format a single variable. Similar to sprintf, without the % prefix. * * @param format * The format string. * * @param val * The value. * * @param time * A `Time` instance that determines the date formatting, for example for * applying time zone corrections to the formatted date. * * @return The formatted representation of the value. */ export function formatSingle(format: string, val: any, time?: Time): string; /** * Get the magnitude of a number. * * @param number * The number. * * @return The magnitude, where 1-9 are magnitude 1, 10-99 magnitude 2 etc. */ export function getMagnitude(number: number): number; /** * Get the updated default options. Until 3.0.7, merely exposing defaultOptions * for outside modules wasn't enough because the setOptions method created a new * object. */ export function getOptions(): Options; /** * Get the computed CSS value for given element and property, only for numerical * properties. For width and height, the dimension of the inner box (excluding * padding) is returned. Used for fitting the chart within the container. * * @param el * An HTML element. * * @param prop * The property name. * * @param toInt * Parse to integer. * * @return The numeric value. */ export function getStyle(el: HTMLDOMElement, prop: string, toInt?: boolean): number; /** * Filter an array by a callback. * * @param arr * The array to filter. * * @param callback * The callback function. The function receives the item as the first * argument. Return `true` if the item is to be preserved. * * @return A new, filtered array. */ export function grep(arr: Array<any>, callback: Function): Array<any>; /** * Search for an item in an array. * * @param item * The item to search for. * * @param arr * The array or node collection to search in. * * @param fromIndex * The index to start searching from. * * @return The index within the array, or -1 if not found. */ export function inArray(item: any, arr: any[], fromIndex?: number): number; /** * Utility function to check if an item is an array. * * @param obj * The item to check. * * @return True if the argument is an array. */ export function isArray(obj: any): boolean; /** * Utility function to check if an Object is an class. * * @param obj * The item to check. * * @return True if the argument is an class. */ export function isClass(obj: any): boolean; /** * Utility function to check if an Object is a HTML Element. * * @param obj * The item to check. * * @return True if the argument is a HTML Element. */ export function isDOMElement(obj: any): boolean; /** * Utility function to check if an item is a number and it is finite (not NaN, * Infinity or -Infinity). * * @param n * The item to check. * * @return True if the item is a finite number */ export function isNumber(n: any): boolean; /** * Utility function to check if an item is of type object. * * @param obj * The item to check. * * @param strict * Also checks that the object is not an array. * * @return True if the argument is an object. */ export function isObject(obj: any, strict?: boolean): boolean; /** * Utility function to check for string type. * * @param s * The item to check. * * @return True if the argument is a string. */ export function isString(s: any): boolean; /** * Returns an array of a given object's own properties. * * @param obj * The object of which the properties are to be returned. * * @return An array of strings that represents all the properties. */ export function keys(obj: any): Array<string>; /** * Map an array by a callback. * * @param arr * The array to map. * * @param fn * The callback function. Return the new value for the new array. * * @return A new array item with modified items. */ export function map(arr: Array<any>, fn: Function): Array<any>; /** * Utility function to deep merge two or more objects and return a third object. * The merge function can also be used with a single object argument to create a * deep copy of an object. * * @param a * The first object to extend. When only this is given, the function * returns a deep copy. * * @param n * An object to merge into the previous one. * * @return The merged object. If the first argument is true, the return is the * same as the second argument. */ export function merge(a: any, n?: any): any; /** * Utility function to deep merge two or more objects and return a third object. * If the first argument is true, the contents of the second object is copied * into the first object. The merge function can also be used with a single * object argument to create a deep copy of an object. * * @param extend * Whether to extend the left-side object (a) or return a whole new * object. * * @param a * The first object to extend. When only this is given, the function * returns a deep copy. * * @param n * An object to merge into the previous one. * * @return The merged object. If the first argument is true, the return is the * same as the second argument. */ export function merge(extend: boolean, a: any, n?: any): any; /** * Take an interval and normalize it to multiples of round numbers. * * @param interval * The raw, un-rounded interval. * * @param multiples * Allowed multiples. * * @param magnitude * The magnitude of the number. * * @param allowDecimals * Whether to allow decimals. * * @param hasTickAmount * If it has tickAmount, avoid landing on tick intervals lower than * original. * * @return The normalized interval. */ export function normalizeTickInterval(interval: number, multiples?: any[], magnitude?: number, allowDecimals?: boolean, hasTickAmount?: boolean): number; /** * Format a number and return a string based on input settings. * * @param number * The input number to format. * * @param decimals * The amount of decimals. A value of -1 preserves the amount in the * input number. * * @param decimalPoint * The decimal point, defaults to the one given in the lang options, or a * dot. * * @param thousandsSep * The thousands separator, defaults to the one given in the lang * options, or a space character. * * @return The formatted number. */ export function numberFormat(number: number, decimals: number, decimalPoint?: string, thousandsSep?: string): string; /** * Iterate over object key pairs in an object. * * @param obj * The object to iterate over. * * @param fn * The iterator callback. It passes three arguments: * * * value - The property value. * * * key - The property key. * * * obj - The object that objectEach is being applied to. * * @param ctx * The context. */ export function objectEach(obj: any, fn: ObjectEachCallbackFunction, ctx?: any): void; /** * Get the element's offset position, corrected for `overflow: auto`. * * @param el * The HTML element. * * @return An object containing `left` and `top` properties for the position in * the page. */ export function offset(el: HTMLDOMElement): OffsetObject; /** * Left-pad a string to a given length by adding a character repetetively. * * @param number * The input string or number. * * @param length * The desired string length. * * @param padder * The character to pad with. * * @return The padded string. */ export function pad(number: number, length: number, padder?: string): string; /** * Return the first value that is not null or undefined. * * @param items * Variable number of arguments to inspect. * * @return The value of the first argument that is not null or undefined. */ export function pick(items: any): any; /** * Reduce an array to a single value. * * @param arr * The array to reduce. * * @param fn * The callback function. Return the reduced value. Receives 4 arguments: * Accumulated/reduced value, current value, current array index, and the * array. * * @param initialValue * The initial value of the accumulator. * * @return The reduced value. */ export function reduce(arr: any[], fn: Function, initialValue: any): any; /** * Return a length based on either the integer value, or a percentage of a base. * * @param value * A percentage string or a number. * * @param base * The full length that represents 100%. * * @param offset * A pixel offset to apply for percentage values. Used internally in axis * positioning. * * @return The computed length. */ export function relativeLength(value: RelativeSize, base: number, offset?: number): number; /** * Remove an event that was added with Highcharts#addEvent. * * @param el * The element to remove events on. * * @param type * The type of events to remove. If undefined, all events are removed * from the element. * * @param fn * The specific callback to remove. If undefined, all events that match * the element and optionally the type are removed. */ export function removeEvent<T>(el: T, type?: string, fn?: EventCallbackFunction<T>): void; /** * Factory to create new series prototypes. * * @param type * The series type name. * * @param parent * The parent series type name. Use `line` to inherit from the basic * Series object. * * @param options * The additional default options that is merged with the parent's * options. * * @param props * The properties (functions and primitives) to set on the new prototype. * * @param pointProps * Members for a series-specific extension of the Point prototype if * needed. * * @return The newly created prototype as extended from Series or its * derivatives. */ export function seriesType(type: string, parent: string, options: any, props: any, pointProps?: any): Series; /** * Set the global animation to either a given value, or fall back to the given * chart's animation option. * * @param animation * The animation object. * * @param chart * The chart instance. */ export function setAnimation(animation: (boolean|AnimationOptionsObject), chart: Chart): void; /** * Merge the default options with custom options and return the new options * structure. Commonly used for defining reusable templates. * * @param options * The new custom chart options. * * @return Updated options. */ export function setOptions(options: Options): Options; /** * Test whether at least one element in the array passes the test implemented by * the provided function. * * @param arr * The array to test * * @param fn * The function to run on each item. Return truty to pass the test. * Receives arguments `currentValue`, `index` and `array`. * * @param ctx * The context. */ export function some(arr: Array<any>, fn: Function, ctx: any): boolean; /** * Check if an element is an array, and if not, make it into an array. * * @param obj * The object to splat. * * @return The produced or original array. */ export function splat(obj: any): any[]; /** * Sort an object array and keep the order of equal items. The ECMAScript * standard does not specify the behaviour when items are equal. * * @param arr * The array to sort. * * @param sortFunction * The function to sort it with, like with regular Array.prototype.sort. */ export function stableSort(arr: any[], sortFunction: Function): void; /** * Stop running animation. * * @param el * The SVGElement to stop animation on. * * @param prop * The property to stop animating. If given, the stop method will stop a * single property from animating, while others continue. */ export function stop(el: SVGElement, prop?: string): void; /** * Set a timeout if the delay is given, otherwise perform the function * synchronously. * * @param fn * The function callback. * * @param delay * Delay in milliseconds. * * @param parameter * An optional parameter to send to the function callback. * * @return An identifier for the timeout that can later be cleared with * Highcharts.clearTimeout. */ export function syncTimeout(fn: Function, delay: number, parameter?: any): number; /** * Get a unique key for using in internal element id's and pointers. The key is * composed of a random hash specific to this Highcharts instance, and a * counter. * * @return A unique key. */ export function uniqueKey(): string; /** * Wrap a method with extended functionality, preserving the original function. * * @param obj * The context object that the method belongs to. In real cases, this is * often a prototype. * * @param method * The name of the method to extend. * * @param func * A wrapper function callback. This function is called with the same * arguments as the original function, except that the original function * is unshifted and passed as the first argument. */ export function wrap(obj: any, method: string, func: WrapProceedFunction): void; declare global { /** * Highcharts-extended JQuery. */ interface JQuery { /** * Helper function to return the chart of the current JQuery selector * element. * * @param className * Name of the factory class in the Highcharts namespace. * * @param options * The chart options structure. * * @param callback * Function to run when the chart has loaded and and all external * images are loaded. Defining a chart.events.load handler is * equivalent. * * @return The current JQuery selector. */ highcharts(className?: ("Chart"|"Map"|"StockChart"|string), options?: Options, callback?: ChartCallbackFunction): JQuery; } } export as namespace Highcharts;